Docker 通過端口來連接一個容器的實現(xiàn)
Docker容器的連接
1.網(wǎng)絡(luò)端口映射
我們創(chuàng)建一個python應(yīng)用的容器
# docker run -d -P training/webapp python app.py
我們使用 -P 參數(shù)創(chuàng)建一個容器,使用 docker ps 來看到端口5000綁定主機端口32768
我們也可以使用 -p 標識來指定容器端口綁定到主機端口。
兩種方式的區(qū)別是:
-P :是容器內(nèi)部端口隨機映射到主機的高端口。
-p : 是容器內(nèi)部端口綁定到指定的主機端口。
………………………………………………………………………………………………………………………………………………………………………
# docker run -d -p 5000:5000 training/webapp python app.py
另外,我們可以指定容器綁定的網(wǎng)絡(luò)地址,比如綁定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
現(xiàn)在我們把其他容器都關(guān)掉,開啟一個新的nginx容器
# docker run -d -p 5000:80 --name web111 nginx
我們把容器的80端口轉(zhuǎn)發(fā)到本地的5000端口,然后在外部進行訪問
可以看見我們是可以訪問成功的,說明端口轉(zhuǎn)發(fā)過來了
2.Docker容器連接
端口映射并不是唯一把 docker 連接到另一個容器的方法。
docker有一個連接系統(tǒng)允許將多個容器連接在一起,共享連接信息。
docker連接會創(chuàng)建一個父子關(guān)系,其中父容器可以看到子容器的信息。
3.容器命名
我們創(chuàng)建一個容器的時候,docker會自動對它進行命名。但我們也可以使用–name標識來命名容器
docker run -d -P --name Peithon training/webapp python app.py
補充知識:如何查看一個docker容器內(nèi)部開放有哪些端口
不用進入容器bash內(nèi)部,在linux命令行內(nèi)輸入docker port 容器id 即可查看
以上這篇Docker 通過端口來連接一個容器的實現(xiàn)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
docker-compose快速搭建docker私有倉庫的步驟
這篇文章主要介紹了docker-compose快速搭建docker私有倉庫的步驟,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12如何為Go程序創(chuàng)建一個最小的Docker Image詳解
這篇文章主要給大家介紹了關(guān)于如何為Go程序創(chuàng)建一個最小的Docker Image的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2017-11-11詳解基于docker-swarm搭建持續(xù)集成集群服務(wù)
這篇文章主要介紹了詳解基于docker-swarm搭建持續(xù)集成集群服務(wù),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-10-10