Docker -p的问题
怪我咯
怪我咯 2017-04-27 09:01:48
[Docker讨论组]

1: docker run -d -p 3000:3000 images
这里若在container内开启localhost:3000的服务,怎么才能从外部访问呢?浏览器地址是什么?

2:我commit了一个已经部署好环境的image,当下次我根据image run一个container,为什么一些shell还需要source才能生效,之前已经source过了。
web服务也需要重新开启。
不是使用Dockerfile生成的image.

3:根据Dockerfile build成的image,是不是在run时会执行内部的ENTRYPOINT,所以一些服务不需要重新开启。

谢谢!!

怪我咯
怪我咯

走同样的路,发现不同的人生

全部回复(3)
天蓬老师

问题2:
你应该把操作放脚本里run时执行的脚本里就行了. source好像也是要每次启动时都得执行的, linux有些位置的文件会自动source

问题3:
ENTRYPOINT 是在容器启动时执行的, 不管有没有CMD命令. 服务什么的一般在这个脚本里启动.

我想大声告诉你
  1. 浏览器地址是127.0.0.1:3000

  2. source命令导入是一次性的,退出终端就会从环境变量移除,下次启动终端重新导入

  3. Dockerfile的RUN指令你可以指定任意shell命令或者脚本

某草草

问题1:
container内需要 listening 0.0.0.0:3000 而不是127.0.0.1:3000

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号