我为示例python金字塔应用创建了一个docker。我的dockerfile是这样的:
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
当我在机器内部卷曲时,它可以正常工作。
如果有人可以帮我弄清楚我的端口映射无法正常工作,那就太好了。
感谢。
答案 0 :(得分:5)
在您的pserve配置中,更改
[server:main]
listen = 127.0.0.1:6543
到
[server:main]
listen = *:6543
否则Web服务器将只接受来自docker容器本身的连接