简单说:Docker 允许通过外部访问容器或容器互联的方式来提供网络服务。
-P
或 -p
参数来指定端口映
射;-P
:Docker
会随机映射一个端口到内部容器开放的网络端口;docker container ls
查看到本地主机的 32768 被映射到了容器的 80 端口,此时访问本机的
32768 端口即可访问容器内 NGINX
默认页面:
docker run -d -P nginx:alpine
:
-p
:指定要映射的端口(在一个指定端口上只可以绑定一个容器)。# 支持的格式
ip:hostPort:containerPort | ip::containerPort | hostPort:containerPort
hostPort:containerPort
(默认会绑定本地所有接口上的所有地址);docker run -d -p 80:80 nginx:alpine
ip:hostPort:containerPort
(指定映射使用一个特定地址);localhost
地址:docker run -d -p 127.0.0.1:80:80 nginx:alpine
ip::containerPort
;localhost
的任意端口到容器的 80 端口,本地主机会自动分配一个端口:docker run -d -p 127.0.0.1::80 nginx:alpine
docker port
;
docker network create -d bridge mynet
mynet
:docker run -it --rm --name busybox1 --network mynet busybox sh
mynet
网络:docker run -it --rm --name busybox2 --network mynet busybox sh
ping
命令来验证两个容器建立了互联关系:
Docker
利用虚拟文件来挂载容器的 3 个相关配置文件;mount
命令查看挂载信息:
DNS
信息发生更新后,所有 Docker
容器的 DNS 配置通过 /etc/resolv.conf
文件立刻得到更新;DNS
,也可以在 /etc/docker/daemon.json
文件中增加以下内容来设置:{
"dns" : [
"123.123.123.123",
"6.6.6.6"
]
}
DNS
为以上的配置。使得配置生效的命令为: docker run -it --rm ubuntu:18.04 cat etc/resolv.conf
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。