docker容器的四種端口映射演示分析
端口映射
- 把容器的端口映射為宿主機(jī)的一個(gè)隨機(jī)或者特定端口,使用外部用戶(hù)可以訪(fǎng)問(wèn)容器服務(wù)
- 端口映射本是在容器底層做了 iptables 地址轉(zhuǎn)發(fā),出去的流量做 SNAT 源地址轉(zhuǎn)發(fā),進(jìn)來(lái)的流量做 DNAT 目標(biāo)地址轉(zhuǎn)發(fā)。
四種端口映射
- 隨機(jī)端口映射:就是把容器的端口隨機(jī)映射為宿主機(jī)的一個(gè)端口。
- 指定端口映射:就是把容器的端口映射為宿主機(jī)的指定端口。
- 指定網(wǎng)卡隨機(jī)端口映射:就是把容器的端口映射為宿主機(jī)的指定網(wǎng)卡的隨機(jī)端口。
- 指定網(wǎng)卡端口映射:就是把容器的端口映射為宿主機(jī)的指定網(wǎng)卡的指定端口。
端口映射演示
隨機(jī)端口映射(-P)
把 tomcat 容器 8080 的端口映射到宿主機(jī)的隨機(jī)端口
[root@docker ~]# docker run -itd -P tomcat:latest fb8096ccc7866465f26ad41f98e4af53ce9a9ffa97f6036ed9314958c1cda457 #查看映射結(jié)果,容器 8080 端口映射到了宿主機(jī)的 32768 端口 [root@docker ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES fb8096ccc786 tomcat:latest "catalina.sh run" 4 seconds ago Up 3 seconds 0.0.0.0:32768->8080/tcp nifty_shannon
指定端口映射(-p 宿主機(jī)端口:容器端口)
將 tomcat 容器的 8080 端口指定映射到宿主機(jī)的 8000 端口
[root@docker ~]# docker run -itd -p 8000:8080 tomcat 252ccaa33ebd731a56fa2d69da97183689fe59cc4059d2024ea39acc3c5f166f #查看映射結(jié)果,容器 8080 端口映射到了宿主機(jī)的 8000 端口 [root@docker ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 252ccaa33ebd tomcat "catalina.sh run" 3 seconds ago Up 3 seconds 0.0.0.0:8000->8080/tcp trusting_archimedes
指定網(wǎng)卡隨機(jī)端口映射(-p ::)
將 tomcat 容器的 8080 端口映射到宿主機(jī) ens33 網(wǎng)卡的隨機(jī)端口
[root@docker ~]# docker run -itd -p 192.168.117.130::8080 tomcat 1cd63859b18da311b4cd0a7e10d70d06f0fa0e933fcef71eaef00696f6131379 #查看映射結(jié)果,容器 8080 端口映射到了宿主機(jī)的192.168.117.130:32768 端口 [root@docker ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 1cd63859b18d tomcat "catalina.sh run" 57 seconds ago Up 56 seconds 192.168.117.130:32768->8080/tcp friendly_euclid
指定網(wǎng)卡指定端口映射(-p 宿主機(jī)IP:宿主機(jī)端口:容器端口)
將 tomcat 容器的 8080 端口映射到宿主機(jī) ens33 網(wǎng)卡的 8000 端口
[root@docker ~]# docker run -itd -p 192.168.117.130:8000:8080 tomcat a19f247a387bfa5cb5d65fe6b23a98676a879672ef002259882c14a113a19b7c #查看映射結(jié)果,容器 8080 端口映射到了宿主機(jī)的192.168.117.130:8000端口 [root@docker ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES a19f247a387b tomcat "catalina.sh run" 22 seconds ago Up 21 seconds 192.168.117.130:8000->8080/tcp practical_wing
以上就是docker容器的四種端口映射演示分析的詳細(xì)內(nèi)容,更多關(guān)于docker容器端口映射的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
- docker利用單個(gè)鏡像映射到多個(gè)端口操作
- Docker給容器添加新端口映射兩種方法及常用命令
- docker端口映射的實(shí)現(xiàn)示例
- Docker容器添加新端口映射的方法與詳細(xì)步驟
- docker網(wǎng)絡(luò)端口映射的實(shí)現(xiàn)步驟
- 快速修改運(yùn)行中的docker容器端口映射的三種方式
- docker已啟動(dòng)容器修改添加端口映射的兩種方法
- 如何對(duì)已有docker容器增加新的端口映射詳解
- Docker容器修改端口映射的實(shí)現(xiàn)
- 對(duì)已有的docker容器增加新的端口映射問(wèn)題(兩種方式)
- docker 啟用多個(gè)端口映射命令的操作
- docker中鏡像映射和端口映射的實(shí)現(xiàn)步驟
相關(guān)文章
宿主機(jī)無(wú)法訪(fǎng)問(wèn)docker容器中nginx服務(wù)的問(wèn)題解決
在虛擬機(jī)中部署Docker并安裝Nginx后,宿主機(jī)無(wú)法訪(fǎng)問(wèn)容器內(nèi)的Nginx服務(wù),通過(guò)檢查端口映射、防火墻狀態(tài)、進(jìn)入容器內(nèi)部啟動(dòng)Nginx以及檢查/修改內(nèi)核的IP轉(zhuǎn)發(fā)設(shè)置,解決了該問(wèn)題,感興趣的可以了解一下2024-11-11Docker?部署?vue?項(xiàng)目的詳細(xì)流程
使用Docker配合Nginx部署Vue3項(xiàng)目涉及多個(gè)步驟:首先安裝Nginx,然后創(chuàng)建掛載目錄及配置文件;接著打包Vue項(xiàng)目并上傳至服務(wù)器;最后創(chuàng)建Dockerfile,構(gòu)建鏡像并啟動(dòng)容器,部署完成后,通過(guò)IP訪(fǎng)問(wèn)應(yīng)用以驗(yàn)證是否成功2024-09-09在docker創(chuàng)建的mysql容器中如何執(zhí)行mysql腳本
在Docker容器中執(zhí)行MySQL腳本的步驟包括進(jìn)入容器、連接MySQL服務(wù)并執(zhí)行腳本,如果腳本在主機(jī)上,可以直接通過(guò)命令執(zhí)行,無(wú)需進(jìn)入容器2024-11-11Docker中Cgroup資源配置的實(shí)現(xiàn)
Cgroup不僅可以限制被namespace?隔離起來(lái)的資源,還可以為資源設(shè)置權(quán)重、計(jì)算使用量、操控進(jìn)程啟停等,本文主要介紹了Docker中Cgroup資源配置的實(shí)現(xiàn),感興趣的可以了解一下2023-09-09docker部署安裝jenkins的實(shí)現(xiàn)步驟
本文主要介紹了docker部署安裝jenkins的實(shí)現(xiàn)步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-12-12Docker安裝Nginx并修改Nginx配置文件的方法詳解
這篇文章主要給大家介紹了關(guān)于Docker安裝Nginx并修改Nginx配置文件的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2023-02-02