嘿,我正在尝试用我的aws公共IP访问我的docker容器,我不知道如何实现这一点。现在我有一个ec2容器ubuntu16.04,其中我使用的是ubuntu的docker镜像。在我安装了apache服务器内部docker镜像的地方,我想使用公共aws ip访问它。
为此,我已经尝试了docker run -d -p 80:80 kyo,这里kyo是我的镜像名称,我可以这样做,但我还需要做什么才能将此容器托管到aws上。我知道我只是个关系网的东西,我不知道如何实现这个目标。
发布于 2017-07-17 14:52:48
当您通过浏览器访问端口80时得到的是什么?它正在解决并显示一些错误吗?如果未检查您的aws安全组策略,您可能需要将端口80列入白名单。
登录到容器,可以看到apache已启动并正在运行。您可以检查正在运行的容器中的开放端口,
netstat -plnt如果最重要的都清除了,就不清楚为什么你不能在外面访问它。如果您的配置有问题,您可以检查apache日志。
如果您已经构建了自己的容器,我不确定是否需要让公开Dockerfile中的参数。
经历这一切,A Brief Primer on Docker Networking Rules: EXPOSE
编辑答案:
您可以通过使用入口点来解决此问题。
将它保存在Dockerfile中,并从它构建一个镜像。
CMD [“apachectl”, “-D”, “FOREGROUND”]或
CMD [“-D”, “FOREGROUND”]
ENTRYPOINT [“apachectl”]https://stackoverflow.com/questions/45111222
复制相似问题