docker在创建容器的时候可以自定义指定端口,也可以通过多个-p选项添加多个端口映射,但如果已经创建容器(特别是已经在容器中执行一些命令安装了一些业务中需要的环境),这时想保留容器已有配置和环境的前提下又想修改端口映射就需要使用其它的办法了。本文地址:http://47.93.183.36/article/939.html,未经许可,不得转载.
由于已经对原有镜像进行了修改,如果此时删除容器再修改端口启动镜像容器就需要重新安装已经执行的环境安装工作,挺麻烦,特别是你根本没有记录都执行了一些什么命令来完善环境,此时又需要重新来一遍。此时还有几个其它好用的办法。本文地址:http://47.93.183.36/article/939.html,未经许可,不得转载.
1,可以将已经配置好启动的容器打包成新的镜像,方法见:http://47.93.183.36/article/702.html 这样在新的镜像上修改端口启动容器即可保留环境,同时也是一个备份环境的方案。本文地址:http://47.93.183.36/article/939.html,未经许可,不得转载.
2,修改容器配置文件,以修改端口。这种处理要停止docker服务(systemctl stop docker 不只是停止容器,而是停止docker),然后进入到容器的配置文件中修改,如下(CONTAINER ID为完整的容器id,可以进到目录下查看,其开头部分就是docker ps -a查看到的容器ID),修改hostconfig.json和config.v2.json两个文件如下:本文地址:http://47.93.183.36/article/939.html,未经许可,不得转载.
#修改hostconfig.json vim /var/lib/docker/containers/CONTAINER ID/hostconfig.json "PortBindings": { #容器内IP "8010/tcp": [ { "HostIp": "", #容器外IP端口 "HostPort": "8010" } ] }, #修改config.v2.json vim /var/lib/docker/containers/CONTAINER ID/config.v2.json #修改ExposedPorts数据, "ExposedPorts": { "80/tcp": {}, "81/tcp": {} },本文地址:http://47.93.183.36/article/939.html,未经许可,不得转载.
然后启动docker和容器即可。本文地址:http://47.93.183.36/article/939.html,未经许可,不得转载.
本文地址:http://47.93.183.36/article/939.html 未经许可,不得转载. 手机访问本页请扫描右下方二维码.
手机扫码直接打开本页面 |