概述
Docker的IP基于本地系统,容器中的端口非本地主机无法访问。
此外,除了端口只能本地访问外,对于容器的另外一个问题是这些 ip 在容器每次启动的时候都会改变。
Docker 解决了容器的这两个问题,并且给容器内部服务的访问提供了一个简单而可靠的方法。Docker 通过端口绑定主机系统的接口,允许非本地客户端访问容器内部运行的服务。为了简便的使得容器间通信,Docker 提供了这种连接机制。
docker架构
自动映射端口
-P使用时需要指定–expose选项,指定需要对外提供服务的端口
$ sudo docker run -t -P –expose 22 –name server ubuntu:14.04
使用docker run -P自动绑定所有对外提供服务的容器端口,映射的端口将会从没有使用的端口池中 (49000..49900) 自动选择,你可以通过docker ps、docker inspect <container_id>或者docker port <container_id> <port>确定具体的绑定信息。
绑定端口到指定接口
基本语法
$ sudo docker run -p [([<host_interface>:[host_port]])|(<host_port>):]<container_port>[/udp]
默认不指定绑定 ip 则监听所有网络接口。
绑定 TCP 端口
# Bind TCP port 8080 of the container to TCP port 80 on 127.0.0.1 of the host machine. $ sudo docker run -p 127.0.0.1:80:8080 <image> <cmd> # Bind TCP port 8080 of the container to a dynamically allocated TCP port on 127.0.0.1 of the host machine. $ sudo docker run -p 127.0.0.1::8080 <image> <cmd> # Bind TCP port 8080 of the container to TCP port 80 on all available interfaces of the host machine. $ sudo docker run -p 80:8080 <image> <cmd> # Bind TCP port 8080 of the container to a dynamically allocated TCP port on all available interfaces $ sudo docker run -p 8080
绑定 UDP 端口
# Bind UDP port 5353 of the container to UDP port 53 on 127.0.0.1 of the host machine. $ sudo docker run -p 127.0.0.1:53:5353/udp
5种常见的端口映射方式
1.对容器暴露的所有端口,随机映射宿主机端口
-P , –publish-all=true | false,默认为false
# docker run -P -it ubuntu /bin/bash
2. 映射宿主机随机端口到容器指定端口
-p containerPort( -p表示 –publish=[ ] )
# docker run -p 80 -it ubuntu /bin/bash
3. 映射宿主机指定端口到容器指定端口(一 一对应)
hostPort : containerPort
# docker run -p 8080:80 -it ubuntu /bin/bash
4. 指定容器IP和容器端口,宿主机端口随机映射
ip : : containerPort
# docker run -p 127.0.0.12::80 -it ubuntu /bin/bash
5. 指定容器IP、宿主机端口、容器端口
ip : hostPort : containerPort
# docker run -p 127.0.0.12:8080:80 -it ubuntu /bin/bash
关于docker端口映射主要分享到这里了,大家有空还是要自己多尝试下,后面会分享更多关于devops内容,感兴趣的朋友可以关注下~
觉得有用的多多转发哦!
1.文章《「如何端口映射」如何做端口映射…》援引自互联网,为网友投稿收集整理,仅供学习和研究使用,内容仅代表作者本人观点,与本网站无关,侵删请点击页脚联系方式。
2.文章《「如何端口映射」如何做端口映射…》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
相关推荐
- . 现代买票为什么带上携程保险
- . 潮阳怎么去广州南站
- . 湖南马拉河怎么样
- . 烧纸为什么到三岔路口
- . 百色为什么这么热
- . 神州租车怎么样
- . 芜湖方特哪个适合儿童
- . 护肤品保养液是什么类目
- . 早晚的护肤保养有哪些项目
- . 女孩护肤品怎么保养的最好