# Docker修改容器映射的端口
Docker启动容器后,需要新增或者修改端口映射
# 修改配置文件更改端口
# 关闭容器
需要先关闭Docker,否则配置不生效
systemctl stop docker
查看容器挂载目录
docker inspect 容器ID
# 修改配置
修改hostconfig.json
文件
"PortBindings":{
"80/tcp":[
{
"HostIp":"",
"HostPort":"80"
}
],
"8088/tcp":[
{
"HostIp":"",
"HostPort":"8088"
}
]
}
修改config.v2.json
文件
"ExposedPorts":{
"80/tcp":{
},
"8088/tcp":{
}
}
并不需要修改Ports,只有在你没有stop容器时,Ports才会有值,如果关闭了容器,就是空数据
# 重启Docker以及容器
systemctl start docker
docker start nginx
# 根据现有容器生成新镜像文件
# 停止nignx容器
docker stop 你的nginx容器id或者名称
docker stop nginx
# 根据现在的nginx容器重新生成一个镜像文件(数据不会丢失)
docker commit nginx(你的nginx容器id或者名称) 新的容器名称:tag
docker commit nginx nginx2:6.6
# 启动新的nginx容器
docker run -d -p 80:80 -p xx端口:xx端口 --name 容器名称 新的nginx容器镜像id/名称
docker run -d -p 80:80 -p 3000:3000 --name nginx a89fs25e901e5
使用数据映射方式
docker run -d -p 80:80 -p 3000:3000 --name nginx -v /usr/local/nginx/conf.d/default.conf:/etc/nginx/conf.d/default.conf -v /usr/local/project/:/usr/local/project/ a89fs25e901e5
# 移除旧的nginx容器
确保第三步的新容器成功运行再删除旧容器,docker rm 旧容器名称
docker rm nginx