摘要:我们知道docker run是可以指定端口映射的,但是容器一旦生成就没有一个命令可以直接修改。通常间接的办法是保存镜像,再创建一个新的容器,在创建时指定新的端口映射。(推荐教程:do
我们知道docker run是可以指定端口映射的,但是容器一旦生成就没有一个命令可以直接修改。通常间接的办法是保存镜像,再创建一个新的容器,在创建时指定新的端口映射。
(推荐教程:docker教程)
那么有什么办法可以不保存镜像而直接修改已有的这个容器呢?
具体方法如下:
1) 停止容器
2) 停止docker服务(systemctl stop docker)
3) 修改这个容器的hostconfig.json文件中的端口(原帖有人提到,如果config.v2.json里面也记录了端口,也要修改)
cd /var/lib/docker/3b6ef264a040* #这里是CONTAINER ID vi hostconfig.json #如果之前没有端口映射, 应该有这样的一段: "PortBindings":{} #增加一个映射, 这样写: "PortBindings":{"3306/tcp":[{"HostIp":"","HostPort":"3307"}]} #前一个数字是容器端口, 后一个是宿主机端口. #而修改现有端口映射更简单, 把端口号改掉就行.
4) 启动docker服务(systemctl start docker)
5) 启动容器
相关文章推荐
网站谷歌评分90+意味着什么?2022-09-06
怎样将不安全网站变成安全网站访问?2022-09-26
网站排名下降,可能跟算法更新没关系2022-09-20
网站如何设置高质量的网页标题?2022-09-14
做外贸网站选哪些语言?法语、德语最吃香2022-09-13