关于DOCKER启动后如何添加新的端口映射

前段时间在用docker部署服务的时候发现,容器已经启动,但是需要新的端口映射(即容器在启动的时候只进行了部分的端口映射 ),经过查询资料后发现现在网上有2种方法,一中是修改json文件另一种是将已经运行的容器打包成一个新的镜像,然后基于打包后的镜像来在启动容器的时候开启全部的端口映射。但是经过我的测试发现第一种修改json文件的方式好像会重置容器。

方法一

停止docker服务

复制代码
systemctl stop docker

修改json文件,一般要修改的文件在/var/lib/docker/containers/下,找到要修改的容器然后进入目录即可看到hostconfig.jsonconfig.v2.json

  • **config.v2.json:**Docker容器的配置文件之一,包含了容器的配置信息,如环境变量、端口映射、卷挂载点等。版本2表示这是Docker引入新配置格式后的文件。

  • **hostconfig.json:**另一个重要的Docker容器配置文件,包含了容器的主机配置信息,比如网络模式、资源限制(如CPU份额和内存限制)、重启策略等。

按照格式添加端口即可

启动docker服务

复制代码
systemctl stat docker

经过这种方式修改后确实会添加新的端口映射,但是容器也好像会被重置 。除了这个问题因为这种方式还涉及到了docker的启停,若是容器过多的话会影响到别的业(不推荐)

方法二

将容器打包成镜像,然后基于打包后的镜像来在启动容器的时候开启全部的端口映射即可


若是还有别的方法或者文章中有错误的话请指出!!!

相关推荐
Sheffield18 小时前
Docker的跨主机服务与其对应的优缺点
linux·网络协议·docker
Sheffield1 天前
Alpine是什么,为什么是Docker首选?
linux·docker·容器
马艳泽1 天前
win10下运行Start Broker and Proxy报错解决
docker
舒一笑2 天前
程序员效率神器:一文掌握 tmux(服务器开发必备工具)
运维·后端·程序员
NineData2 天前
数据库管理工具NineData,一年进化成为数万+开发者的首选数据库工具?
运维·数据结构·数据库
用户13573999256602 天前
Windows 从 0 搭建 WSL2 原生 AI 开发环境:Codex + Docker + VSCode
docker
vi_h2 天前
在 macOS 上通过 Docker 安装并运行 Ollama(详细可执行教程)
macos·docker·ollama
黑心老魔2 天前
通过 Docker 创建开发环境
docker·开发环境
冬奇Lab3 天前
一天一个开源项目(第41篇):Workout.cool - 现代化开源健身教练平台,训练计划与进度追踪
docker·开源·资讯
梦想很大很大3 天前
拒绝“盲猜式”调优:在 Go Gin 项目中落地 OpenTelemetry 链路追踪
运维·后端·go