我想为 5 个不同的网站提供服务,每个网站在 dockerhub 上都有自己的 docker 映像,我想用一个 docker-compose.yml 文件为所有网站提供服务。我使用的工具是: - nginx -proxy -letsencrypt-nginx-proxy-companion
我想 1. 使用 docker-compose 和nginx-proxy为所有网站提供服务 - 每个网站都有一个唯一的域名 2. 使用 docker-compose 和letsencrypt-nginx-proxy-companion
我已经成功地使用这个 docker-compose.yml 完成了第 1 步:
version: '2'
services:
nginx-proxy:
image: jwilder/nginx-proxy
ports:
- "80:80"
volumes:
- /var/run/docker.sock:/tmp/docker.sock:ro
changed-site1:
image: changed-user/changed-site1:v0.1.0
environment:
- VIRTUAL_HOST=changed-site1.com
changed-site2:
image: changed-user/changed-site2:v0.1.0
environment:
- VIRTUAL_HOST=changed-site2.com
changed-site3:
image: changed-user/changed-site3:v0.1.0
environment:
- VIRTUAL_HOST=changed-site3.com
changed-site4:
image: changed-user/changed-site4:v0.1.0
environment:
- VIRTUAL_HOST=api.changed-site4.com
changed-site5:
image: changed-user/changed-site5:v0.1.0
environment:
- VIRTUAL_HOST=changed-site5.com
当我运行“docker-compose up”时,一切正常,但没有 SSL。
我现在正在尝试完成第 2 步,我的每个网站都给我一个 502 错误。SSL 对它们都没有工作。这是我的 docker-compose.yml 文件的样子:
version: '2'
services:
nginx-proxy:
image: jwilder/nginx-proxy
container_name: nginx-proxy
ports:
- "80:80"
- "443:443"
volumes:
- conf:/etc/nginx/conf.d
- vhost:/etc/nginx/vhost.d
- html:/usr/share/nginx/html
- dhparam:/etc/nginx/dhparam
- certs:/etc/nginx/certs:ro
- /var/run/docker.sock:/tmp/docker.sock:ro
network_mode: bridge
letsencrypt:
image: jrcs/letsencrypt-nginx-proxy-companion
container_name: nginx-proxy-le
volumes_from:
- nginx-proxy
volumes:
- certs:/etc/nginx/certs:rw
- /var/run/docker.sock:/var/run/docker.sock:ro
network_mode: bridge
changed-site1:
image: changed-user/changed-site1:v0.1.0
environment:
- VIRTUAL_HOST=changed-site1.com
changed-site2:
image: changed-user/changed-site2:v0.1.0
environment:
- VIRTUAL_HOST=changed-site2.com
changed-site3:
image: changed-user/changed-site3:v0.1.0
environment:
- VIRTUAL_HOST=changed-site3.com
changed-site4:
image: changed-user/changed-site4:v0.1.0
environment:
- VIRTUAL_HOST=api.changed-site4.com
changed-site5:
image: changed-user/changed-site5:v0.1.0
environment:
- VIRTUAL_HOST=changed-site5.com
知道我在第二个 docker-compose.yml 文件中做错了什么(第一个正在工作)。