朋友们好很高兴再次见面今天我们来了解一下Docker的一些小聪明啊。我们在使用Docker的时候会经常用到端口映射所以有时候可能会遇 朋友们好很高兴再次见面今天我们来了解一下Docker的
朋友们好很高兴再次见面今天我们来了解一下Docker的一些小聪明啊。我们在使用Docker的时候会经常用到端口映射所以有时候可能会遇到“悔不当初” 的情况。
例如一开始启动一个容器的时候随随便便的映射一个端口后期重视之后又想修改怎么办呢本期带你了解一下通过修改容器配置文件实现端口映射更改(操作过程需要停止容器运行)
启动一个容器
我们就使用最常用的nginx镜像创建一个容器命令如下
docker run -d -p 81:80 --namenginx nginx
启动结果
创建nginx容器
修改端口映射
首先要停止容器
docker stop nginx
停止Nginx容器
然后查询容器ID
docker inspect nginx -f {{.Id}}
获取容器ID
然后进入下面这个目录
cd /var/lib/docker/containers/dff6508beddffa1fafcd8af0452b47cb19763a5a301181129906ff32074d70e9/
dff6508beddffa1fafcd8af0452b47cb19763a5a301181129906ff32074d70e9就是上一步获取的ID
查看目录下的文件
然后查看下面这个文件的内容
hostconfig.json
查看容器主机配置文件
找到HostPort将这个键的值改成需要映射的主机端口
操作如下
保存的时候一定要加感叹号( )否则会失败只能用(wq!)保存使用(wq、x、x!)都不行
前后内容对比
配置文件修改对比
然后启动容器验证
一定要先重启Docker服务
systemctl restart docker
docker start nginx
完成端口映射修改
小伙伴们还有哪些更好的解决方案可以在评论区讨论一下展现你的专业能力吧