架构师_程序员

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 287|回复: 0

修改docker容器端口映射的方法

[复制链接]
发表于 2018-10-12 11:06:10 | 显示全部楼层 |阅读模式
大家都知道docker run可以指定端口映射,但是容器一旦生成,就没有一个命令可以直接修改。通常间接的办法是,保存镜像,再创建一个新的容器,在创建时指定新的端口映射。

有没有办法不保存镜像而直接修改已有的这个容器呢?有。在stackoverflow上面找到答案了,原帖如下

https://stackoverflow.com/questi ... ng-docker-container

我是把rap2-delos容器的8080端口映射到宿主机的80端口上面了,如下图:

QQ截图20181012105355.jpg

现在,我现在想把rap2-delos容器的8080端口映射到宿主机的8080端口上面。

教程如下

--停止容器
  1. docker stop b3c94b2a3844
复制代码

--运行 docker inspect 【CONTAINER ID】 | grep Id 命令
  1. docker inspect b3c94b2a3844 | grep Id
复制代码

--执行 cd /var/lib/docker/containers 命令进入找到与 Id 相同的目录,如下图
  1. cd /var/lib/docker/containers/b3c94b2a3844b05f214887c04f0e9350abdaa03e3317960d54b8f164100f9d3a
复制代码

QQ截图20181012110034.jpg

停止 docker 引擎服务,systemctl stop docker

修改修改 hostconfig.json 配置文件

例子

vi hostconfig.json
如果之前没有端口映射, 应该有这样的一段:
"PortBindings":{}
增加一个映射, 这样写:
"PortBindings":{"3306/tcp":[{"HostIp":"","HostPort":"3307"}]}
前一个数字是容器端口, 后一个是宿主机端口.
QQ截图20181012110246.jpg

修改保存完配置,最后启动docker服务

systemctl start docker

搞定

QQ截图20181012110619.jpg





上一篇:mysql cpu 100% 居高不下解决方案
下一篇:vs code TSLint常见错误解决方案
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。

Mail To:help@itsvse.com

QQ|Archiver|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2018-12-12 09:17

Powered by Discuz! X3.4

© 2001-2014 Comsenz Inc.

快速回复 返回顶部 返回列表