docker端口映射的實(shí)現(xiàn)示例
端口映射的作用
1 允許外部網(wǎng)絡(luò)訪問(wèn)容器內(nèi)的服務(wù): 通過(guò)將容器內(nèi)的服務(wù)綁定到宿主機(jī)上的端口,我們可以使得外部網(wǎng)絡(luò)可以通過(guò)宿主機(jī)的 IP 地址和端口號(hào)來(lái)訪問(wèn)容器內(nèi)的服務(wù)。這樣,我們就可以將容器中的服務(wù)對(duì)外暴露,實(shí)現(xiàn)與容器交互或調(diào)用容器的功能。
2 解決端口沖突問(wèn)題: 當(dāng)我們?cè)谕慌_(tái)主機(jī)上運(yùn)行多個(gè)容器時(shí),容器內(nèi)的服務(wù)可能會(huì)監(jiān)聽(tīng)相同的端口。通過(guò)端口映射,我們可以將這些容器內(nèi)的服務(wù)綁定到不同的宿主機(jī)端口上,避免端口沖突
什么是docker的端口映射
Docker 端口映射允許我們將容器內(nèi)部的服務(wù)綁定到宿主機(jī)上的一個(gè)或多個(gè)端口。通過(guò)端口映射,我們可以從外部網(wǎng)絡(luò)訪問(wèn)容器內(nèi)的服務(wù)
docker端口映射定義
Docker除了通過(guò)網(wǎng)絡(luò)訪問(wèn)外,還提供了其他兩個(gè)非常方便的功能來(lái)滿足服務(wù)訪問(wèn)的基本需求:
一是允許映射容器內(nèi)應(yīng)用的服務(wù)端口到本地宿主機(jī)端口;
二是使用互聯(lián)機(jī)制來(lái)實(shí)現(xiàn)多個(gè)容器間通過(guò)容器名來(lái)快速訪問(wèn)
端口映射可使用-p、-P來(lái)實(shí)現(xiàn)
-p指定要映射的端口,一個(gè)指定端口上只可以綁定一個(gè)容器
-P將容器內(nèi)部開(kāi)放的網(wǎng)絡(luò)端口隨機(jī)映射到宿主機(jī)的一個(gè)端口上
端口映射支持的格式:
ip:hostport:containerport #指定ip、指定宿主機(jī)port、指定容器port ip::containerport #指定ip、未指定宿主機(jī)port(隨機(jī))、指定容器port hostport:containerport #未指定ip、指定宿主機(jī)port、指定容器port
端口的映射有以下五種方法:
# 1 將容器暴露的所有端口,都隨機(jī)映射到宿主機(jī)上。 (不推薦使用) docker run -P -it ubuntu /bin/bash # 2 將容器指定端口隨機(jī)映射到宿主機(jī)一個(gè)端口上。 docker run -P 80 -it ubuntu /bin/bash 以上指令會(huì)將容器的80端口隨機(jī)映射到宿主機(jī)的一個(gè)端口上。 # 3 將容器指定端口指定映射到宿主機(jī)的一個(gè)端口上。 例如: docker run -p 8000:80 -it ubuntu /bin/bash 以上指令會(huì)將容器的80端口映射到宿主機(jī)的8000端口上。 # 4 將容器ip和端口,隨機(jī)映射到宿主機(jī)上 docker run -P 192.168.0.100::80 -it ubuntu /bin/bash 以上指令會(huì)將容器的ip192.168.0.100和80端口,隨機(jī)映射到宿主機(jī)的一個(gè)端口上。 # 將容器ip和端口,指定映射到宿主機(jī)上 docker run -p 192.168.0.100:8000:80 -it ubuntu /bin/bash 上指令會(huì)將容器的ip192.168.0.100和80端口,映射到宿主機(jī)的8000端口
查看映射端口配置
docker port container_ID #容器ID #結(jié)果輸出 80/tcp -> 0.0.0.0:800
到此這篇關(guān)于docker端口映射的實(shí)現(xiàn)示例的文章就介紹到這了,更多相關(guān)docker 端口映射內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- docker利用單個(gè)鏡像映射到多個(gè)端口操作
- Docker給容器添加新端口映射兩種方法及常用命令
- Docker容器添加新端口映射的方法與詳細(xì)步驟
- docker網(wǎng)絡(luò)端口映射的實(shí)現(xiàn)步驟
- 快速修改運(yùn)行中的docker容器端口映射的三種方式
- docker已啟動(dòng)容器修改添加端口映射的兩種方法
- 如何對(duì)已有docker容器增加新的端口映射詳解
- Docker容器修改端口映射的實(shí)現(xiàn)
- docker容器的四種端口映射演示分析
- 對(duì)已有的docker容器增加新的端口映射問(wèn)題(兩種方式)
- docker 啟用多個(gè)端口映射命令的操作
- docker中鏡像映射和端口映射的實(shí)現(xiàn)步驟
相關(guān)文章
用Docker搭建nextcloud個(gè)人網(wǎng)盤(pán)教程
大家好,本篇文章主要講的是用Docker搭建nextcloud個(gè)人網(wǎng)盤(pán)教程,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話記得收藏一下2021-12-12如何解決docker容器訪問(wèn)不了外部網(wǎng)絡(luò)問(wèn)題
介紹了Docker?bridge網(wǎng)絡(luò)的工作原理,包括虛擬網(wǎng)橋的創(chuàng)建、容器的IP地址分配、IP轉(zhuǎn)發(fā)的作用以及NAT的配置,通過(guò)配置IP轉(zhuǎn)發(fā)和NAT規(guī)則,Docker能夠?qū)崿F(xiàn)容器與外部網(wǎng)絡(luò)之間的通信,文章還提供了解決某個(gè)具體問(wèn)題的步驟2024-11-11docker安裝Elasticsearch7.6集群并設(shè)置密碼的方法步驟
本文主要介紹了docker安裝Elasticsearch7.6集群并設(shè)置密碼,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-10-10利用docker-compsoe部署前后端分離的項(xiàng)目方法
這篇文章主要介紹了利用docker-compsoe部署前后端分離的項(xiàng)目方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08Docker學(xué)習(xí)筆記之容器查看啟動(dòng)終止刪除的方法
本篇文章主要Docker學(xué)習(xí)筆記之容器查看啟動(dòng)終止刪除的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-12-12如何解決Linux系統(tǒng)下Docker占滿分區(qū)的問(wèn)題
本篇文章主要介紹了如何解決Linux系統(tǒng)下Docker占滿分區(qū)的問(wèn)題。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-07-07Docker 常用命令整理及使用注意事項(xiàng)總結(jié)
這篇文章主要介紹了Docker 常用命令整理及使用注意事項(xiàng)總結(jié)的相關(guān)資料,這里整理了Docker 的常用命令,說(shuō)明這些命令是什么意思及使用方法,需要的朋友可以參考下2016-12-12