此文章是vip文章,如何查看?  

1,点击链接获取密钥 http://nicethemes.cn/product/view29882.html

2,在下方输入文章查看密钥即可立即查看当前vip文章


修改docker容器端口

  • 时间:
  • 浏览:
  • 来源:互联网

大家都知道docker run可以指定端口映射,但是容器一旦生成,就没有一个命令可以直接修改。通常间接的办法是,保存镜像,再创建一个新的容器,在创建时指定新的端口映射。

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

https://stackoverflow.com/questions/19335444/how-do-i-assign-a-port-mapping-to-an-existing-docker-container

我的操作步骤是:

1) 停止容器
2) 停止docker服务(systemctl stop docker)
3) 修改这个容器的hostconfig.json文件中的端口(原帖有人提到,如果config.v2.json里面也记录了端口,也要修改)


 
  1. cd /var/lib/docker/3b6ef264a040* #这里是CONTAINER ID

  2. vi hostconfig.json

  3. 如果之前没有端口映射, 应该有这样的一段:

  4. "PortBindings":{}

  5. 增加一个映射, 这样写:

  6. "PortBindings":{"3306/tcp":[{"HostIp":"","HostPort":"3307"}]}

  7. 前一个数字是容器端口, 后一个是宿主机端口.

  8. 而修改现有端口映射更简单, 把端口号改掉就行.


4) 启动docker服务(systemctl start docker)
5) 启动容器

 

本文链接http://element-ui.cn/news/show-577195.aspx