Docker如何修改容器已经映射的端口
作者:灵壹Eli
在项目中我们一般通过命令启动一个容器的时候,通常会通过命令指定容器与物理机网络端口的映射,这篇文章主要给大家介绍了关于Docker如何修改容器已经映射的端口的相关资料,需要的朋友可以参考下
Docker启动容器后,需要新增或者修改端口映射
修改配置文件更改端口
关闭容器
需要先关闭Docker,否则配置不生效
systemctl stop docker
查看容器挂载目录
docker inspect 容器ID
修改配置
修改hostconfig.json
文件
"PortBindings":{ "80/tcp":[ { "HostIp":"", "HostPort":"80" } ], "8088/tcp":[ { "HostIp":"", "HostPort":"8088" } ] }
修改config.v2.json
文件
"ExposedPorts":{ "80/tcp":{ }, "8088/tcp":{ } }
并不需要修改Ports,只有在你没有stop容器时,Ports才会有值,如果关闭了容器,就是空数据
重启Docker以及容器
systemctl start docker docker start nginx
根据现有容器生成新镜像文件
停止nignx容器
docker stop 你的nginx容器id或者名称
docker stop nginx
根据现在的nginx容器重新生成一个镜像文件(数据不会丢失)
docker commit nginx(你的nginx容器id或者名称) 新的容器名称:tag
docker commit nginx nginx2:6.6
启动新的nginx容器
docker run -d -p 80:80 -p xx端口:xx端口 --name 容器名称 新的nginx容器镜像id/名称
docker run -d -p 80:80 -p 3000:3000 --name nginx a89fs25e901e5
使用数据映射方式
docker run -d -p 80:80 -p 3000:3000 --name nginx -v /usr/local/nginx/conf.d/default.conf:/etc/nginx/conf.d/default.conf -v /usr/local/project/:/usr/local/project/ a89fs25e901e5
移除旧的nginx容器
确保第三步的新容器成功运行再删除旧容器,docker rm 旧容器名称
docker rm nginx
总结
到此这篇关于Docker如何修改容器已经映射的端口的文章就介绍到这了,更多相关Docker修改容器映射端口内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!