TL;DR 为什么这个wordpress:latest Dockerfile可以使用nginx-proxy 但这个不是wordpress:fpm Dockerfile?以及如何使用
wordpress:fpm
图像nginx-proxy
你好,
我成功地将 nginx-proxy 与一些 wordpress 容器一起使用。例如,这docker-compose.yml
完美地工作:
db:
image: mariadb
environment:
- MYSQL_ROOT_PASSWORD=password
volumes:
- /home/stack/my_domain/bdd:/var/lib/mysql
wordpress:
image: wordpress
links:
- db:mysql
environment:
- VIRTUAL_HOST=my_domain.fr,www.my_domain.fr
- LETSENCRYPT_HOST=www.my_domain.fr
- LETSENCRYPT_EMAIL=contact@my_domain.fr
env_file:
- ./env
volumes:
- /home/stack/my_domain/wordpress:/var/www/html
但是,如果我使用wordpress:fpm
图像(而不是基于 apache 的图像)我有 502 Bad Gateway 错误,并且日志中出现这条消息:
nginx.1 | 2017/08/14 21:29:51 [错误] 347#347: *2447 connect() 在连接到上游时失败(111:连接被拒绝),客户端:86.222.20.31,服务器:www.my_domain.fr,请求: “GET /contact/ HTTP/2.0”,上游:“ http://172.17.0.14:80/contact/ ”,主机:“www.my_domain.fr”,引荐来源:“ https://www.my_domain.fr/ "
这个消息:
root@9408854fae4b:/etc/nginx/conf.d# nginx -s reload 2017/08/14 21:37:35 [emerg] 671#671: /etc/nginx/conf 中“上游”指令中的参数数量无效。 d/default.conf:53 nginx:[emerg] /etc/nginx/conf.d/default.conf:53 中“上游”指令中的参数数量无效
第 53 行的 default.conf 包含
upstream mydomain.fr {
## Can be connect with "bridge" network
# my_domain_wordpress_1
server 172.17.0.14:9000;
}
其他域有服务器172.17.0.xx:80;
,所以我在 docker-compose.yml 文件中添加port:80
和/或。expose:80
我设法获得
upstream mydomain.fr {
## Can be connect with "bridge" network
# my_domain_wordpress_1
server 172.17.0.14:80;
}
但同样的 502 错误。
知道为什么吗?
问候