通过配置文件修改docker容器端口号

举报
yd_221104950 发表于 2020/12/02 22:50:25 2020/12/02
【摘要】 这个过程分三步: 第一步:找到配置文件 容器的配置文件在 /var/lib/docker/containers 里对应的目录下,里面的目录名都是用ID命名的,所以我们首先要找到这个ID,才能进到正确的目录去配置。这个ID可以通过下面两步来确定 通过docker ps -a 命令,得到容器名或容器ID ~$ sudo docker ps -a CONTAINER ID...

这个过程分三步:
第一步:找到配置文件
容器的配置文件在 /var/lib/docker/containers 里对应的目录下,里面的目录名都是用ID命名的,所以我们首先要找到这个ID,才能进到正确的目录去配置。这个ID可以通过下面两步来确定

  • 通过docker ps -a 命令,得到容器名或容器ID
~$ sudo docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5241cb464832 nginx "bash" About an hour ago   Up 11 minutes 0.0.0.0:8666->80/tcp, 0.0.0.0:8999->8888/tcp MySecond


  
 
  • 1
  • 2
  • 3
  • 4
  • 通过上一步获得的容器名,获得id,这个就是目录名:
~$ sudo docker inspect MySecond | grep Id "Id": "5241cb4648321bcab7e9837c218598637e2c2f8cf1b359fdddd4f75e09b1618e"

  
 
  • 1
  • 2

第二步:修改配置文件

  • 首先切换到root用户,否则权限不够
~$ su root
#接着输入密码即可

  
 
  • 1
  • 2
  • 打开配置文件目录
# cd /var/lib/docker/containers/5241cb4648321bcab7e9837c218598637e2c2f8cf1b359fdddd4f75e09b1618e

  
 
  • 1
  • 按下如下要求修改配置文件:
    要求把宿主机8666端口映射到容器的80端口,把宿主机8999端口映射到容器的8888端口

(1)修改hostconfig.json

# vim hostconfig.json

  
 
  • 1

内容如下:

"PortBindings":{
"80/tcp":[{
		"HostIp":"",
		"HostPort":"8666"
		}],
"8888/tcp":[{
	"HostIp":"",
	"HostPort":"8999"}]
}

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

(2)修改config.v2.json
将容器的端口暴露出来。

# vim config.v2.json

  
 
  • 1

内容如下:

"ExposedPorts":{
	"80/tcp":{},
	"8888/tcp":{}
	}

  
 
  • 1
  • 2
  • 3
  • 4
"Ports":{
	"80/tcp":[{"HostIp":"0.0.0.0","HostPort":"8666"}],
	"8888/tcp":[{"HostIp":"0.0.0.0","HostPort":"8999"}]
	}

  
 
  • 1
  • 2
  • 3
  • 4

第三步:重启docker服务

$ sudo service docker restart
或
$ sudo systemctl start docker

  
 
  • 1
  • 2
  • 3

这样就完成修改已创建的容器的端口信息了。注意:修改后要重启docker服务才能生效

文章来源: blog.csdn.net,作者:WongKyunban,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/weixin_40763897/article/details/102703298

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。