Docker 中的端口映射
Port mapping in Docker
我为示例 python 金字塔应用创建了一个 docker。我的 docker 文件是这样的:
FROM ubuntu:16.04
RUN apt-get update -y && \
apt-get install -y python-pip python-dev curl && \
pip install --upgrade pip setuptools
WORKDIR /app
COPY . /app
EXPOSE 6543
RUN pip install -e .
ENTRYPOINT [ "pserve" ]
CMD [ "development.ini" ]
我的构建命令是这样的:
docker build -t pyramid_app:latest .
我的运行命令是这样的:
docker run -d -p 6543:6543 pyramid_app
当我尝试访问 http://localhost:6543 时出现错误
Failed to load resource: net::ERR_SOCKET_NOT_CONNECTED
当我在机器内卷曲时它工作正常。
如果有人能帮我弄清楚为什么我的端口映射不起作用,那就太好了。
谢谢。
在您的 pserve 配置中,更改
[server:main]
listen = 127.0.0.1:6543
到
[server:main]
listen = *:6543
否则 Web 服务器将只接受来自 docker 容器本身的连接
我为示例 python 金字塔应用创建了一个 docker。我的 docker 文件是这样的:
FROM ubuntu:16.04
RUN apt-get update -y && \
apt-get install -y python-pip python-dev curl && \
pip install --upgrade pip setuptools
WORKDIR /app
COPY . /app
EXPOSE 6543
RUN pip install -e .
ENTRYPOINT [ "pserve" ]
CMD [ "development.ini" ]
我的构建命令是这样的:
docker build -t pyramid_app:latest .
我的运行命令是这样的:
docker run -d -p 6543:6543 pyramid_app
当我尝试访问 http://localhost:6543 时出现错误
Failed to load resource: net::ERR_SOCKET_NOT_CONNECTED
当我在机器内卷曲时它工作正常。
如果有人能帮我弄清楚为什么我的端口映射不起作用,那就太好了。
谢谢。
在您的 pserve 配置中,更改
[server:main]
listen = 127.0.0.1:6543
到
[server:main]
listen = *:6543
否则 Web 服务器将只接受来自 docker 容器本身的连接