繁体   English   中英

本地 Wordpress 环境与 Docker 组合 - cURL 错误 7:无法连接到本地主机端口 8080:连接被拒绝

[英]Local Wordpress env with Docker Compose - cURL error 7: Failed to connect to localhost port 8080: Connection refused

我正在尝试第一次使用 Docker Compose 设置本地 Wordpress 环境。 我目前能够在localhost:8080上访问我的 Wordpress 实例并在本地映射文件。

我购买了一个主题,将其添加到wp-content/themes ,然后系统提示我为其安装一些必需的插件。 当我单击Install时,这是我收到的错误:

Download failed. cURL error 7: Failed to connect to localhost port 8080: Connection refused

这是我的配置文件:

version: "2"

services:
  my-wpdb:
    image: mariadb
    ports:
      - "8081:3306"
    environment:
      MYSQL_ROOT_PASSWORD: password
  my-wp:
    image: wordpress:latest
    volumes:
      - ./:/var/www/html
    ports:
      - "8080:80"
    links:
      - my-wpdb:mysql
    environment:
      WORDPRESS_DB_PASSWORD: password

可能是一个简单的修复,但我似乎无法弄清楚。 谢谢!

根据你 docker-compose :

  - "8080:80"

8080是OUTSIDE容器

80是内部容器

继帕佩的回答之后。 curl 试图在容器内(80)连接外部端口(在您的情况下为 8080)。

经过多次谷歌搜索,人们给出的唯一解决方案是将内部和外部端口更改为 80:80。 如果您在端口 80 上运行其他服务,则这是不可行的。

我的解决方案是修改容器内的 Apache2 conf,以便 Apache 在外部端口上进行内部响应。 可能有更好的方法,但这是有效的。

/etc/apache2/ports.conf

Listen 80
Listen 8080

/etc/apache2/sites-available/000-default.conf

<VirtualHost *:*>

我同意 PaulH 的解决方案。 在正在运行的 WordPress Linux Docker 容器中执行以下命令,然后重新启动容器。

echo -e "\nListen 8080\n" >> /etc/apache2/ports.conf
echo -e "\n<VirtualHost *:*>\n</VirtualHost>\n" >> /etc/apache2/sites-available/000-default.conf

cat /etc/apache2/ports.conf && cat /etc/apache2/sites-available/000-default.conf

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM