![](/img/trans.png)
[英]Download failed. cURL error 28: Connection timed out after 10001 milliseconds
[英]Error: cURL error 28: Resolving timed out after 10000 milliseconds (http_request_failed) with nginx reverse proxy in docker
我正在尝试使用 Docker 和 Nginx 反向代理来设置本地 Wordpress 环境。 WordPress。 有效,但在站点健康中我得到:
Error: cURL error 28: Resolving timed out after 10000 milliseconds (http_request_failed)
这是我的 docker-compose 文件
version: '3.1'
services:
web:
image: nginx
ports:
- "80:80"
volumes:
- ./site.conf:/etc/nginx/conf.d/site.conf
depends_on:
- wordpress
- db
wordpress:
image: wordpress
expose:
- 80
environment:
WORDPRESS_DB_HOST: db
WORDPRESS_DB_USER: local_user
WORDPRESS_DB_PASSWORD: secret
WORDPRESS_DB_NAME: local
volumes:
- ./wordpress:/var/www/html
db:
image: mysql:5.7
environment:
MYSQL_DATABASE: local
MYSQL_USER: local_user
MYSQL_PASSWORD: secret
MYSQL_ROOT_PASSWORD: root_secret
ports:
- 3306:3306
volumes:
- ./mysql:/var/lib/mysql
这是我的 Nginx 配置文件:
upstream backend{
server wordpress:80;
}
server {
listen 80;
listen [::]:80;
index index.php index.html;
server_name bedrock.local;
# error_log /var/log/nginx/error.log;
# access_log /var/log/nginx/access.log;
# root /code/web;
location / {
proxy_pass http://backend/;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
bedrock.local 域在 /etc/hosts 中使用 127.0.0.1 在本地解析我没有使用 HTTPS(只是 HTTP)来简化测试。
谢谢!
我遇到了同样的问题,由于 Docker 网络,Wordpress 容器无法访问公共 IP 地址上的网站。
The best solution to this is to add the fqdn aliases to the Nginx container in the docker-compose.yml file to allow Wordpress to reach Nginx internally.
此配置将解决问题:
web:
image: nginx
ports:
- "80:80"
volumes:
- ./site.conf:/etc/nginx/conf.d/site.conf
depends_on:
- wordpress
- db
networks:
default:
aliases:
- yourwebsite.com
- www.yourwebsite.com
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.