国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 服務(wù)器 > Web服務(wù)器 > 正文

Docker 給運(yùn)行中的容器設(shè)置端口映射的方法

2024-09-01 13:53:16
字體:
供稿:網(wǎng)友

一、概念

Docker 端口映射即映射容器內(nèi)應(yīng)用的服務(wù)端口到本機(jī)宿主機(jī)器。

二、實(shí)現(xiàn)

當(dāng)容器中運(yùn)行一些網(wǎng)絡(luò)應(yīng)用,要讓外部訪問這些應(yīng)用時(shí),可以通過 -P 或 -p 參數(shù)兩種方式來指定端口映射。

1. 隨機(jī)映射

使用 -P 參數(shù)時(shí),Docker 會(huì)隨機(jī)映射一個(gè)端口到內(nèi)部容器開放的網(wǎng)絡(luò)端口,如下開啟一個(gè) nginx 服務(wù):

$ docker run -d -P nginxe93349d539119dc48dc841e117f6388d6afa6a6065b75a5b4aedaf5fb2a051fc$ $ docker ps CONTAINER ID    IMAGE        COMMAND         CREATED       STATUS       PORTS          NAMESe93349d53911    nginx        "nginx -g 'daemon ..."  11 seconds ago   Up 9 seconds    0.0.0.0:32769->80/tcp  zen_kirch

使用 docker ps 看到,本地主機(jī)的 32769 端口被映射到了容器的 80 端口,這時(shí)我們通過本機(jī)瀏覽器訪問 http://localhost:32769 就會(huì)出現(xiàn) nginx 歡迎頁(yè)面。

2. 指定端口

使用 -p 參數(shù)時(shí),可以指定要映射的端口,并且在一個(gè)指定的端口上只可以綁定一個(gè)容器。支持的格式有:

  1. IP:HostPort:ContainerPort
  2. IP:ContainerPort
  3. HostPort:ContainerPort

下面開啟一個(gè) nginx 服務(wù),將本機(jī) 8080 端口映射到容器的 80 端口:

$ docker run -d -p 8080:80 nginx23e725098712d061a1382f33d6fe54da23ae37597a62f8debdd3731b5f9cc4b9$ $ docker psCONTAINER ID    IMAGE        COMMAND         CREATED       STATUS       PORTS          NAMES23e725098712    nginx        "nginx -g 'daemon ..."  8 seconds ago    Up 6 seconds    0.0.0.0:8080->80/tcp  frosty_ptolemy

使用 docker ps 看到,本地主機(jī)的 8080 端口被映射到了容器的 80 端口,這時(shí)我們通過本機(jī)瀏覽器訪問 http://localhost:8080 就會(huì)出現(xiàn) nginx 歡迎頁(yè)面。

三、查看映射端口

使用 docker port 命令來查看當(dāng)前映射的端口配置,也可以查看到綁定的地址。命令格式如下:

$ docker port CONTAINER [PRIVATE_PORT[/PROTO]]

容器有自己的內(nèi)部網(wǎng)絡(luò)和 IP 地址,可以使用 docker inspect + 容器ID 獲取容器的具體信息。

DOCKER 給運(yùn)行中的容器添加映射端口

方法1

1、獲得容器IP

將container_name 換成實(shí)際環(huán)境中的容器名

docker inspect `container_name` | grep IPAddress

2、 iptable轉(zhuǎn)發(fā)端口

將容器的8000端口映射到docker主機(jī)的8001端口

 

復(fù)制代碼 代碼如下:

iptables -t nat -A  DOCKER -p tcp --dport 8001 -j DNAT --to-destination 172.17.0.19:8000

 

方法2

1.提交一個(gè)運(yùn)行中的容器為鏡像

docker commit containerid foo/live

2.運(yùn)行鏡像并添加端口

docker run -d -p 8000:80 foo/live /bin/bash

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持VEVB武林網(wǎng)。


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 平山县| 苏尼特左旗| 五家渠市| 绩溪县| 西乌| 喀喇沁旗| 江永县| 三门峡市| 定南县| 宝山区| 曲阳县| 车险| 叙永县| 霍邱县| 德保县| 九龙县| 民勤县| 敦化市| 潞西市| 股票| 庆安县| 河津市| 高平市| 于田县| 健康| 渑池县| 云和县| 大兴区| 安溪县| 响水县| 攀枝花市| 左贡县| 广东省| 九龙城区| 项城市| 京山县| 石景山区| 商南县| 百色市| 菏泽市| 穆棱市|