我正在尝试理解如何在没有域名的情况下使用grafana/caddy实现https。
目前,我通过http://xx.xxx.xx.xx:3000/访问grafana。
我希望这是https,但我很难理解如何生成证书并让它像预期的那样工作。我认为letsencrypt需要一个我没有的域。
version: "3"
networks:
monitor-net:
driver: bridge
volumes:
grafana_data: {}
services:
grafana:
image: grafana/grafana:8.4.4
container_name: grafana
volumes:
- grafana_data:/var/lib/grafana
- ./grafana/provisioning/dashboards:/etc/grafana/provisioning/dashboards
- ./grafana/provisioning/datasources:/etc/grafana/provisioning/datasources
environment:
- GF_SECURITY_ADMIN_USER=${GF_ADMIN_USER}
- GF_SECURITY_ADMIN_PASSWORD=${GF_ADMIN_PASS}
- GF_USERS_ALLOW_SIGN_UP=false
restart: unless-stopped
expose:
- 3000
networks:
- monitor-net
labels:
org.label-schema.group: "monitoring"
caddy:
image: caddy:2.3.0
container_name: caddy
ports:
- "3000:3000"
- "9090:9090"
- "9093:9093"
- "9091:9091"
volumes:
- ./caddy:/etc/caddy
environment:
- ADMIN_USER=${GF_ADMIN_USER}
- ADMIN_PASSWORD=${GF_ADMIN_PASS}
- ADMIN_PASSWORD_HASH=${ADMIN_PASS_HASH}
restart: unless-stopped
networks:
- monitor-net
labels:
org.label-schema.group: "monitoring"我假设我将在/etc/caddy/certs上创建一个卷,存储证书,但不知道如何生成它只用于IP,也不知道它是如何被caddy识别的。
发布于 2022-05-09 19:18:24
使用SSL的IP数据
默认情况下,凯蒂通过HTTPS为所有站点提供服务。Caddy通过HTTPS提供IP地址和本地/内部主机名,使用自动本地信任的自签名证书(如果允许的话)。示例: localhost,127.0.0.1
在您的Caddyfile中,您必须添加如下内容
http://192.168.1.25:3000 {
reverse_proxy grafana_ip:3000
}发布于 2022-05-03 23:08:57
看起来像卡迪不支持为IP地址生成HTTPS证书。。此外,让我们加密目前不支持为裸IP地址颁发证书。。
然而,ZeroSSL支持为IP生成证书。似乎确实。您可以尝试使用这些指示将您的一个或所有站点更改为使用ZeroSSL,但我无法在我的测试服务器上工作。
最好的选择可能是获得一个可以指向您的服务器的域,然后从那里服务它。
https://stackoverflow.com/questions/72091137
复制相似问题