Docker容器在运行期间有时可能会须要修改或者添加暴露的端口,可是有时候运行的容器又不想再另外创建一个新的镜像。这时能够找到docker容器的存放地方,而后直接修改配置文件。nginx
咱们的容器都是保存在/var/lib/docker/containers下面。docker
个人容器是在/var/lib/docker/containers/797f3d0cb82aec7d1c355c7461b5bc5a050c1c0cbbe5d813ede0edad061e6632json
每一个容器ID对应一个hash_id,能够看到nginx容器暴露了两个端口。下面咱们来添加多一个9999端口。工具
进入容器对应的目录:spa
cd /var/lib/docker/containers/797f3d0cb82aec7d1c355c7461b5bc5a050c1c0cbbe5d813ede0edad061e6632
咱们看到:3d
把hostconfig.json复制出来使用json转换工具找到“PortBindings”节点code
接下来咱们就依葫芦画瓢在上面添加一个。blog
如图:hash
修改hostconfig.json并保存。class
而后再修改config.v2.json的ExposedPorts,如图:
保存退出。
重启docker ,
重启容器。
能够看到,9999端口已经暴露出来了。