GAE 内部 docker。不能暴露8080
GAE inside docker. cant expose 8080
我有一个 GAE 应用程序和一群人在做它,这样可以省去设置所有依赖项的麻烦,我希望允许他们 运行 gae 开发服务器docker 容器。
我的 docker 文件结尾为:
CMD dev_appserver.py app_localhost.yaml
我的 docker-compose 就像:
version: '3'
services:
my_image:
build: ./my_image
image: my_image
ports:
- "8080:8080"
- "8000:8000"
volumes:
- ./my_image:/usr/src/
建立这个工作正常。 运行 将其与 docker-compute up
结合使用似乎也能正常工作。我的意思是,它有友好的输出,说默认模块可以在 8080 访问,还有所有这些好东西。
但是如果我通过 chrome 访问 localhose:8080,我会得到 ERR_SOCKET_NOT_CONNECTED。如果我尝试 curl
,我会得到 curl: (56) Recv failure: Connection reset by peer
。
这一切 运行 都很好,当我 运行 它在容器外时可以访问。
docker ps 56 ↵
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3a2ae48f1f66 waxed_backend_image "/bin/sh -c 'dev_a..." 9 hours ago Up 8 hours 0.0.0.0:8000->8000/tcp, 0.0.0.0:8080->8080/tcp dockerpygae_waxed_backend_1
我有一个可能相关的问题: 似乎每次我尝试以任何 dockery 方式与 gae 开发服务器通信时,事情都开始变得非常糟糕
我改变了这个:
CMD dev_appserver.py app_localhost.yaml
为此:
CMD dev_appserver.py --host 0.0.0.0 app_localhost.yaml
现在一切正常
虽然我不知道它为什么起作用。我仍然会感谢比这个更正确的答案
我有一个 GAE 应用程序和一群人在做它,这样可以省去设置所有依赖项的麻烦,我希望允许他们 运行 gae 开发服务器docker 容器。
我的 docker 文件结尾为:
CMD dev_appserver.py app_localhost.yaml
我的 docker-compose 就像:
version: '3'
services:
my_image:
build: ./my_image
image: my_image
ports:
- "8080:8080"
- "8000:8000"
volumes:
- ./my_image:/usr/src/
建立这个工作正常。 运行 将其与 docker-compute up
结合使用似乎也能正常工作。我的意思是,它有友好的输出,说默认模块可以在 8080 访问,还有所有这些好东西。
但是如果我通过 chrome 访问 localhose:8080,我会得到 ERR_SOCKET_NOT_CONNECTED。如果我尝试 curl
,我会得到 curl: (56) Recv failure: Connection reset by peer
。
这一切 运行 都很好,当我 运行 它在容器外时可以访问。
docker ps 56 ↵
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3a2ae48f1f66 waxed_backend_image "/bin/sh -c 'dev_a..." 9 hours ago Up 8 hours 0.0.0.0:8000->8000/tcp, 0.0.0.0:8080->8080/tcp dockerpygae_waxed_backend_1
我有一个可能相关的问题:
我改变了这个:
CMD dev_appserver.py app_localhost.yaml
为此:
CMD dev_appserver.py --host 0.0.0.0 app_localhost.yaml
现在一切正常
虽然我不知道它为什么起作用。我仍然会感谢比这个更正确的答案