在创建Docker容器时,我们可以使用-p或者-P参数来映射主机与容器的端口:
- -P: 随机端口映射,容器内部端口随机映射到主机的高端口
- -p: 指定端口映射,格式为:主机(宿主)端口:容器端口
如果已经创建好的容器,想要更改映射的端口怎么办?貌似没有直接的docker命令可以更改。但还是有解决方案:
1. 关闭容器
docker stop <容器名|容器ID>
2. 停止容器服务
systemctl stop docker
或者:
service docker stop
3. 修改配置文件
修改配置文件hostconfig.json以及config.v2.json,这两个文件在/var/lib/docker/containers/<容器ID>/下,容器ID为一串HASH字符串,可以通过
docker inspect <容器名>
来查看,如查看jira容器:
修改hostconfig.json中的HostPort,它是映射到主机的端口
修改config.v2.json中的ExposedPorts,它是容器暴露出去的端口
4. 启动容器服务
systemctl start docker
或者:
service docker start
5. 启动容器
docker start <容器名|容器ID>