在Docker中怎么利用端口连接容器?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
1.网络端口映射
我们创建一个python应用的容器
# docker run -d -P training/webapp python app.py
我们使用 -P 参数创建一个容器,使用 docker ps 来看到端口5000绑定主机端口32768
我们也可以使用 -p 标识来指定容器端口绑定到主机端口。
两种方式的区别是:
-P :是容器内部端口随机映射到主机的高端口。
-p : 是容器内部端口绑定到指定的主机端口。
………………………………………………………………………………………………………………………………………………………………………
# docker run -d -p 5000:5000 training/webapp python app.py
另外,我们可以指定容器绑定的网络地址,比如绑定127.0.0.1
# docker run -d -p 127.0.0.1:5001:5000 training/webapp python app.py
这样我们就可以通过访问127.0.0.1:5001来访问容器的5000端口
容器默认都是绑定 tcp 端口,如果要绑定 UDP 端口,可以在端口后面加上 /udp
# docker run -d -p 127.0.0.1:5000:5000/udp training/webapp python app.py
docker port <images id> [port]命令可以让我们快捷地查看端口的绑定情况
docker port ce206e3c0ae6 5000
现在我们把其他容器都关掉,开启一个新的nginx容器
# docker run -d -p 5000:80 --name web111 nginx
我们把容器的80端口转发到本地的5000端口,然后在外部进行访问
可以看见我们是可以访问成功的,说明端口转发过来了
2.Docker容器连接
端口映射并不是唯一把 docker 连接到另一个容器的方法。
docker有一个连接系统允许将多个容器连接在一起,共享连接信息。
docker连接会创建一个父子关系,其中父容器可以看到子容器的信息。
3.容器命名
我们创建一个容器的时候,docker会自动对它进行命名。但我们也可以使用–name标识来命名容器
docker run -d -P --name Peithon training/webapp python app.py
补充知识:如何查看一个docker容器内部开放有哪些端口
不用进入容器bash内部,在linux命令行内输入docker port 容器id 即可查看
关于在Docker中怎么利用端口连接容器问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。