300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > 修改docker mysql容器端口的映射

修改docker mysql容器端口的映射

时间:2020-02-27 16:48:09

相关推荐

修改docker mysql容器端口的映射

修改docker mysql容器端口的映射

参考来源地址:/my_chenjie/article/details/85058032

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

有没有办法不保存镜像而直接修改已有的这个容器呢?有

我的操作步骤是:

停止容器 (docker stop container_id)

docker stop 712a3f0e5035

停止docker服务(systemctl stop docker)

systemctl stop docker

修改这个容器的hostconfig.json文件中的端口

cd /var/lib/docker/712a3f0e5035* #这里是CONTAINER ID

vi hostconfig.json

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

“PortBindings”:{}

增加一个映射, 这样写:

“PortBindings”:{“3306/tcp”:[{“HostIp”:"",“HostPort”:“3307”}]}

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

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

我改成"PortBindings":{“3306/tcp”:[{“HostIp”:"",“HostPort”:“3306”}]}

(原帖有人提到,如果config.v2.json里面也记录了端口,也要修改)

启动docker服务(systemctl start docker)

systemctl start docker

启动容器

docker start 712

查看修改后的结果为:

[root@node114 ~]# docker ps -aCONTAINER ID IMAGECOMMAND CREATED STATUS PORTSNAMES52ecb0aa3b1b supermap/iportal "/bin/sh -c /opt/run…" 8 weeks ago Exited (137) 13 minutes ago iportalserver9f1c40dd51cf supermap/iserver "/bin/sh -c /opt/run…" 8 weeks ago Exited (137) 13 minutes ago supermapiserver712a3f0e5035 8ef3"container-entrypoin…" 8 weeks ago Up 3 seconds 0.0.0.0:3306->3306/tcp MYSQL56docker5c58116a7eb7 nginx"nginx -g 'daemon of…" 8 weeks ago Exited (0) 4 weeks ago test

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。