Docker动态添加端口不需要重新建立镜像怎么实现

这篇“Docker动态添加端口不需要重新建立镜像怎么实现”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Docker动态添加端口不需要重新建立镜像怎么实现”文章吧。

docker容器在运行期间有时可能会需要修改或者添加暴露的端口,但是有时候运行的容器又不想再另外建立一个新的镜像。这时可以找到docker容器的存放地方,然后直接修改配置文件

我们的容器都是保存在/var/lib/docker/containers下面。

Docker动态添加端口不需要重新建立镜像怎么实现

我的容器是在/var/lib/docker/containers/797f3d0cb82aec7d1c355c7461b5bc5a050c1c0cbbe5d813ede0edad061e6632

每个容器id对应一个hash_id,可以看到Nginx容器暴露了两个端口。下面我们来添加一个9999端口。

进入容器对应的目录:

cd /var/lib/docker/containers/797f3d0cb82aec7d1c355c7461b5bc5a050c1c0cbbe5d813ede0edad061e6632

我们看到:

Docker动态添加端口不需要重新建立镜像怎么实现

把hostconfig.json复制出来使用json转换工具找到“portbindings”节点

接下来我们就依葫芦画瓢在上面添加一个

如图:

Docker动态添加端口不需要重新建立镜像怎么实现

修改hostconfig.json并保存。

然后再修改config.v2.json的exposedports,如图:

Docker动态添加端口不需要重新建立镜像怎么实现

保存退出

重启docker ,

重启容器。

Docker动态添加端口不需要重新建立镜像怎么实现

可以看到,9999端口已经暴露出来了。

以上就是关于“Docker动态添加端口不需要重新建立镜像怎么实现”这篇文章内容,相信大家都有了一定的了解,希望小编分享内容对大家有帮助,若想了解更多相关的知识内容,请关注编程之家行业资讯频道。

相关文章

Docker是什么Docker是 Docker.Inc 公司开源的一个基于 LXC技...
本文为原创,原始地址为:http://www.cnblogs.com/fengzheng...
镜像操作列出镜像:$ sudo docker imagesREPOSITORY TAG IMA...
本文原创,原文地址为:http://www.cnblogs.com/fengzheng/p...
在 Docker 中,如果你修改了一个容器的内容并希望将这些更改...
在Docker中,--privileged 参数给予容器内的进程几乎相同的权...