如何启动docker集装箱 – 其参数已更改?
我下载了官方的docker httpd容器,但默认情况下,它将我的端口32770映射到它的端口80.我希望每当我启动容器时,它会监听我的端口80 – > 80。
有没有在docker启动给任何命令行参数,或者我可以硬编码docker这个映射?
我试图用“docker运行”命令来运行它,但每次启动它的新实例,我失去了我对我想要使用的docker容器所做的更改。 我怎样才能保留端口映射的变化?
你想发布端口从容器到主机,因为Thilo说httpd
映像已经公开端口80,所以你可以发布它。
该命令映射端口80并在后台运行Web服务器:
docker run -d -p 80:80 httpd
现在你可以浏览到http:// localhost ,看到“It works!” 页。
docker run
是docker create
+ docker start
的快捷方式,所以它总是从镜像创build一个新的容器。 如果你想修改一个容器并保存它们,可以使用commit或者Dockerfile来创build你自己的基于httpd
的映像 – 最好是Dockerfile,因为它更容易pipe理和自动化。 然后你会有一个自定义的网站图像,当你运行它将永远是相同的。
你应该根据httpd官方图像创build你自己的docker镜像。 然后公开要映射的端口(EXPOSE 80) https://docs.docker.com/engine/reference/builder/#/expose它应该做你想做的。
它会给一些像:
FROM httpd EXPOSE 80
构build:docker build -t test。
运行:docker运行testing:)
- Docker – 如何构build一个nodejs docker镜像`FROM centos:7.2.1511` docker image
- 在Docker上使用Systemd的CentOS
- 以特定的顺序向Docker容器添加一个新的NIC
- 在centos的前台运行mysql
- docker的Linux容器不支持驱动程序开发?
- docker安装容器selinux挂在centos上
- 使用Docker工具(Kinematic)安装本地Windows驱动器以基于Centos映像
- 我无法启动与iptables错误docker服务
- Docker Centos 7 easy_install supervisor ssl问题后面的代理