Docker无法对Localhost运行CURL或WGET命令
我在尝试使用CURL命令进行PHPUnit测试时发现了一个问题。我总是得到:Docker无法对Localhost运行CURL或WGET命令,docker,curl,docker-compose,Docker,Curl,Docker Compose,我在尝试使用CURL命令进行PHPUnit测试时发现了一个问题。我总是得到: Connecting to `www.example.local` (www.example.local)|127.0.0.1|:80... failed: Connection refused. 然后,我尝试从容器命令行运行wget和curl命令,同样的问题。我让docker这样工作 在我的计算机的/etc/hosts中 127.0.0.1 www.example.local 127.0.0.1 api.examp
Connecting to `www.example.local` (www.example.local)|127.0.0.1|:80... failed: Connection refused.
然后,我尝试从容器命令行运行wget和curl命令,同样的问题。我让docker这样工作
在我的计算机的/etc/hosts中
127.0.0.1 www.example.local
127.0.0.1 api.example.local
以此类推,在我的浏览器中访问网站时,它会起作用。在我的docker-compse.yml中,我有:
version: “3.4”
volumes:
postgres_database :
external: false
mysql_data : {}
schemas:
external: false
services:
php:
build:
context : ./
dockerfile : Dockerfile
network: host
volumes:
- ./:/code
- ./uploads.ini:/usr/local/etc/php/conf.d/uploads.ini
depends_on: [ "postgres"]
ports:
- "9000:9000"
expose:
- "9000"
container_name: binge_php
web:
image: nginx:latest
build:
context : ./
dockerfile : Dockerfile_Nginx
network: host
ports:
- "80:80"
expose:
- "0"
volumes:
- ./:/code
- ./site.conf:/etc/nginx/conf.d/site.conf
- ./nginx_custom_settings.conf:/etc/nginx/conf.d/nginx_custom_settings.conf
links:
- php
depends_on:
- php
container_name: binge_nginx
我可能做错了什么,使我无法从PHP容器中运行curl命令?在Docker 127.0.0.1中通常表示“此容器”,而不是任何其他容器或主机系统。@DavidMaze但如果我的网络是
network:host
,它不应该与我的主机系统相同吗?主机网络意味着您可以使用localhost
访问任何其他容器,localhost是指此容器,要访问其他容器,您必须使用容器名称,但我怀疑它在主机网络中可能不起作用,注意:考虑到容器在使用主机模式网络时没有自己的IP地址,端口映射不会生效,-p,-publish,-p和--publish all选项被忽略,而是生成一个警告:警告:使用主机网络模式时,已发布的端口将被丢弃您只是使用主机网络构建容器,而不是运行它们。不过,这通常是一个不必要的解决方法,您根本不需要指定它。请提供一个。提供的撰写文件包含大量对问题中未包含的外部文件的引用。在Docker 127.0.0.1中,通常表示“此容器”,而不是任何其他容器或主机系统。@DavidMaze,但如果我的网络是network:host
,它不应该与我的主机系统相同吗?主机网络意味着您可以使用localhost
访问任何其他容器,localhost是指此容器,要访问其他容器,您必须使用容器名称,但我怀疑它在主机网络中可能不起作用,注意:考虑到容器在使用主机模式网络时没有自己的IP地址,端口映射不会生效,-p,-publish,-p和--publish all选项被忽略,而是生成一个警告:警告:使用主机网络模式时,已发布的端口将被丢弃您只是使用主机网络构建容器,而不是运行它们。不过,这通常是一个不必要的解决方法,您根本不需要指定它。请提供一个。所提供的撰写文件包含大量对问题中未包含的外部文件的引用。