docker nginx 和 php,php 无法连接到本地主机

2023-12-15

我创建了一个开放端口 8080:80 的 nginx 容器 这样我就可以从主机访问它。

它连接到具有开放端口 9000:9000 的 php fpm 容器

nginx 与 php 成功运行。

我的问题是 php 尝试访问 localhost:8080 但问题是 php localhost:8080 无效,它需要连接到 nginx 容器。

这是我的 WordPress 网站上的错误: 你可以看到那里有一些很时髦的东西...... 下面我将附上我的 docker-compose.yml


从以下位置下载安装包http://localhost:8080/wp-content/themes/realtyspace/plugins/advanced-custom-fields-pro.zip

下载失败。 cURL 错误 7:无法连接到本地主机端口 8080:连接被拒绝


docker-compose.yml

version: '2'
services:
  my-nginx:
    build: .
    volumes:
      - ./../:/var/www/html
    ports:
      - "8080:80"
    links:
      - my-php

  my-php:
    build:
      context: .
      dockerfile: Dockerfile.php-fpm
      volumes:
        - ./../:/var/www/html
      ports:
        - "9000:9000"
      links:
        - my-mysql

  my-mysql:
    image: mariadb:5.5
    volumes:
      - /var/lib/mysql
    environment:
      MYSQL_ROOT_PASSWORD: wp
      MYSQL_DATABASE: wp
      MYSQL_USER: wp
      MYSQL_PASSWORD: wp

使用docker的内部网络并配置php访问http://my-nginx:80.

localhost将解析为 php 容器本身的隔离 IP,而不是运行所有内容的 Docker 主机的隔离 IP。并试图通过http://dockerhost:8080将导致不可移植的 docker-compose.yml 以及 iptables 防火墙和 nat 规则的可能问题,这些问题比其价值更麻烦。使用 v2 撰写文件的价值在于,您可以在 Docker 内部获得一个隔离的网络,并通过每个容器的 DNS 解析来相互协作。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

docker nginx 和 php,php 无法连接到本地主机 的相关文章

随机推荐