- 时间:2020-05-05 12:00 编辑: 来源: 阅读:
- 扫一扫,手机访问
摘要:Docker学习笔记之Docker端口映射
最近在学习docker,今天了解了Docker端口映射,给自己留个小笔记,也分享给大家
[b]为什么要端口映射?[/b]
在启动容器时,如果不配置宿主机器与虚拟机的端口映射,外部程序是无法访问虚拟机的,因为没有端口。
[b]端口映射的指令是什么?[/b]
docker指令:[code]docker run -p ip:hostPort:containerPort redis[/code]
使用-p参数会分配宿主机的端口映射到虚拟机。
IP表示主机的IP地址。
hostPort表示宿主机的端口。
containerPort表示虚拟机的端口。
[b]支持的格式有三种:[/b]
ip:hostPort:containerPort:映射指定地址的指定端口到虚拟机的指定端口(不常用)
如:127.0.0.1:3306:3306,映射本机的3306端口到虚拟机的3306端口。
ip::containerPort:映射指定地址的任意端口到虚拟机的指定端口。(不常用)
如:127.0.0.1::3306,映射本机的3306端口到虚拟机的3306端口。
hostPort:containerPort:映射本机的指定端口到虚拟机的指定端口。(常用)
如:3306:3306,映射本机的3306端口到虚拟机的3306端口。
[b]如何查看是否映射成功?[/b]
使用docker ps命令查看
[img]http://img.1sucai.cn/uploads/article/2018010709/20180107090109_0_28394.jpg[/img]
出现6379/tcp的表示宿主机并没有打开与虚拟机的端口映射。
出现0.0.0.0:3306->3306/tcp表示宿主机的3306端口映射到了虚拟机的3306端口。
也可以使用docker port NAME查看端口映射情况。
[img]http://img.1sucai.cn/uploads/article/2018010709/20180107090109_1_35583.jpg[/img]
表示虚拟机的3306端口映射到了主机的3306端口。
如果没有任何回复,表示端口映射失败。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程素材网。