首页 > 解决方案 > Docker 网络问题与非常简单的 docker-compose 设置

问题描述

自从我开始在 Mac OS X 上工作以来,我仍在努力学习如何在 docker 上工作,与在 Linux 上的工作情况相比,一切都让人头疼。

我正在尝试本教程,但在使用 docker compose 运行 php + apache 服务后我被卡住了,我无法连接到容器以检查我部署的 Web 环境中的文件:docker compose tutorial

容器运行正常,如果我这样做,docker inspect <container id> | grep "IPAddress"我会收到 ip 172.20.0.2

如果我将此 ip 放入浏览器或 ping 它,我不会得到任何响应。

是的,我设置 172.20.0.2:8080

我的 docker-compose.yml:

version: '2'

services:
  php:
    build: apache-php
    ports:
      - "8080:8080"
      - "8443:8443"
    volumes:
      - ./apache-php/www:/var/www/html

我试过的:

  1. 在 /etc/hosts 中将 172.20.0.2 设置为像 docker.web 这样的域
  2. 从 docker-compose.yml 中删除端口
  3. 尝试通过 localhost:8080 访问

任何想法?

标签: dockerdocker-composecontainersdocker-networking

解决方案


这些ports设置控制哪些端口映射回您的主机。您是否尝试过localhost:8080在浏览器中访问?

编辑:将端口80从容器映射到主机是解决问题的方法。


推荐阅读