Docker端口映射
Docker端口映射
1.为什么需要端口映射
外部机器访问docker容器的应用,需要解决2个问题:
1) 外部机器能够成功连接docker容器
2) 外部机器能够访问docker容器的端口
2.实现端口映射
docker run … -p [宿主机服务端口:]容器服务端口 …
注意:"宿主机服务端口:"部分若省略,宿主机会采用随机端口号和容器端口完成映射
3.查看端口映射
docker port 容器 # 查看指定容器的端口映射
docker ps -a # 查看所有容器的端口映射
4.修改端口映射
首先,停止docker服务;
修改"hostconfig.json"
cd /var/lib/docker/containers/容器ID
vim hostconfig.json
搜索"PortBindings"
“PortBindings”:{“80/tcp”:[{“HostIp”:“”,“HostPort”:“81”}]}
重启docker服务,重启容器
5.防火墙问题
firewall-cmd --zone=public --permanent --add-port=80/tcp
firewall-cmd --reload
systemctl stop firewalld
systemctl disable firewalld