docker修改运行中的容器的端口

本文指导如何通过`docker ps`查找容器ID,修改config.v2.json和hostconfig.json中的HostPort,将宿主机端口映射调整,然后停止并重启容器。

docker ps看到id前缀

然后docker stop 你要改的容器id

find / -name config.v2.json修改里面的HostPort为宿主机上需要的端口

find / -name hostconfig.json修改里面的HostPort为宿主机上需要的端口

service docker restart

### 修改 Docker 容器和镜像的默认端口设置 #### 配置 Docker 服务监听自定义端口 为了使 Docker 服务监听不同的 TCP 端口,在 CentOS7 中可以通过编辑 Docker 的 systemd service 文件来实现这一点。具体操作如下: 对于希望 Docker 主机接受来自任何 IP 地址对该新端口的连接请求,可以在 `/etc/docker/daemon.json` 文件中加入特定配置项[^1]。 ```json { "hosts": ["tcp://0.0.0.0:2376"] } ``` 上述 JSON 片段指示 Docker 使用指定的地址与端口号作为其 API 接口绑定地址;其中 `2376` 是所选的新端口编号。完成此更改之后,记得保存文件并执行命令让改动生效: ```bash sudo systemctl restart docker ``` 这会重启 Docker 服务以应用新的配置参数。 #### 运行容器时映射端口 当启动一个新的容器实例时,可以利用 `-p` 或者 `--publish` 参数来进行主机到容器内部端口之间的映射工作。例如,如果想要把宿主机上的 8080 端口转发给正在运行的应用程序所在的容器内的 80 端口,则可采用下面的方式创建并启动该容器: ```bash docker run -d -p 8080:80 nginx ``` 这里假设目标应用程序是在 Nginx Web Server 上托管的服务,默认情况下它会在容器内监听第 80 号端口。通过这种方式,外部访问可通过宿主机的 8080 来触及容器中的 web 应用。 需要注意的是,Docker 镜像本身并不直接涉及端口的概念——它们只是打包好的环境及其依赖关系集合体。真正涉及到网络通信的部分是由基于这些镜像构建出来的容器负责处理的。因此,“修改镜像端口”的说法实际上是指定在使用某个镜像部署容器时应如何配置相应的端口映射规则[^2]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xcagy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值