我正在尝试制作一个安全的Docker代理作为概念证明。似乎即将开始工作(端口80有效,b.example.com出现“ It Works!”页面)。但是,控制台在生成密钥时显示错误。
docker-compose.yml:
version: '2'
services:
nginx-proxy:
image: jwilder/nginx-proxy
ports:
- "80:80"
- "443:443"
volumes:
- ./certs:/etc/nginx/certs:ro
- /etc/nginx/vhost.d
- /usr/share/nginx/html
- /var/run/docker.sock:/tmp/docker.sock:ro
nginx-letsencrypt:
image: jrcs/letsencrypt-nginx-proxy-companion
volumes:
- ./certs:/etc/nginx/certs:rw
- /var/run/docker.sock:/var/run/docker.sock:ro
volumes_from:
- nginx-proxy:rw
environment:
- LETSENCRYPT_TEST=true
site-b:
image: httpd
networks:
- reverse-proxy
- back
environment:
- VIRTUAL_PORT=1234
- VIRTUAL_HOST=b.example.com
- LETSENCRYPT_HOST=b.example.com
Run Code Online (Sandbox Code Playgroud)
错误:
nginx-letsencrypt_1 | 2018-04-27 11:41:40,244:ERROR:simp_le:1446:CA将某些授权标记为无效,这可能意味着它无法访问http://example.com/.well-known/acme-challenge/ X。您是否在-d example.com:path或--default_root中设置了正确的路径?您所有的域名都可以通过互联网访问吗?请检查您域的DNS条目,主机的网络/防火墙设置以及您的网络服务器配置。如果域的DNS条目同时设置了A和AAAA字段,则某些CA(如Let's Encrypt)将通过IPv6执行质询验证。如果您的DNS提供商没有正确回答CAA记录请求,那么“让我们加密”将不会为您的域颁发证书(请参阅https://letsencrypt.org/docs/caa/)。授权失败:https://acme-v01.api.letsencrypt。