docker 在已经启动的容器中开启端口映射
1. 老办法就是打包再启动
2. 修改配置文件
2.1. 先关闭已经启动的所有容器
docker stop [ID/Name]
2.2. 关闭docker服务
systemctl stop docker
systemctl stop docket.socket
2.3. 找到docker配置文件
cd /var/lib/docker/containors/your_containor_id
在找这个ID的时候要先在之前docker没关闭之前查看
docker ps -a
2.4. 修改hostconfig.json 和 config.v2.json
配置文件如下
- 这个是hostconfig.json
- 在这里要把映射的端口信息写入
{
"Binds":[
"//home/kali/Desktop/docker/share/:/home/share/"
],
"ContainerIDFile":"",
"LogConfig":{
"Type":"json-file",
"Config":{
}
},
"NetworkMode":"default",
"PortBindings":{
"10086/tcp":[{
"HostIp":"",
"HostPort":"10086"
}],
"80/tcp":[{
"HostIp":"",
"HostPort":"80"
}],
"443/tcp":[{
"HostIp":"",
"HostPort":"443"
}]
},
"RestartPolicy":{
"Name":"no",
"MaximumRetryCount":0
},
"AutoRemove":false,
"VolumeDriver":"",
"VolumesFrom":null,
"CapAdd":null,
"CapDrop":null,
"CgroupnsMode":"private",
"Dns":[
],
"DnsOptions":[
],
"DnsSearch":[
],
"ExtraHosts":null,
"GroupAdd":null,
"IpcMode":"private",
"Cgroup":"",
"Links":null,
"OomScoreAdj":0,
"PidMode":"",
"Privileged":false,
"PublishAllPorts":false,
"ReadonlyRootfs":false,
"SecurityOpt"