主頁 > 知識庫 > docker利用單個(gè)鏡像映射到多個(gè)端口操作

docker利用單個(gè)鏡像映射到多個(gè)端口操作

熱門標(biāo)簽:激光標(biāo)記地圖標(biāo)注 撫州市城區(qū)地圖標(biāo)注 百度地圖底圖標(biāo)注 企業(yè)辦理400電話收費(fèi)標(biāo)準(zhǔn) 新鄉(xiāng)牧野400電話申請 中國地圖標(biāo)注上各個(gè)省 高德地圖標(biāo)注足跡怎么打標(biāo) 智能電銷機(jī)器人真的有用么 電銷智能機(jī)器人試用

需求:

官網(wǎng)的資源服務(wù)器肯定不能使用一個(gè)實(shí)例, 需要多個(gè)一起,但是如果繼續(xù)復(fù)制太慢了,我就想能不能直接使用docker鏡像,多制造幾個(gè)相同的容器實(shí)例

前后兩個(gè)docker-compose.yml

version: '3'
services:
 micro-hcnet-website-13:
  image: 172.18.0.1:5000/hcnet-website-12:0.0.1-SNAPSHOT
  restart: on-failure
  ports:
  - 8311:8211
~   
version: '3'
services:
 micro-hcnet-website-13:
  image: 172.18.0.1:5000/hcnet-website-12:0.0.1-SNAPSHOT
  restart: on-failure
  ports:
  - 8211:8211
~  

執(zhí)行docker-compse.yml之后

顯示正常啟動

查看容器

映射成功

最后查看consul

果然都是同一個(gè)映射接口。

補(bǔ)充知識:Docker入門——多容器的建立(docker-compose)

一次啟動多個(gè)多個(gè)服務(wù)(容器),會方便我們在生產(chǎn)實(shí)踐中的操作

以haproy 負(fù)載均衡 apache 服務(wù)與nginx服務(wù)為例

通過compose 進(jìn)行docker 的多容器應(yīng)用

Compose 是一個(gè)用戶定義和運(yùn)行多個(gè)容器的 Docker 應(yīng)用程序。在 Compose 中你可以使用 YAML 文件來配置你的應(yīng)用服務(wù)。然后,只需要一個(gè)簡單的命令,就可以創(chuàng)建并啟動你配置的所有服務(wù)。

使用 Compose 基本會有如下三步流程:

在 Dockfile 中定義你的應(yīng)用環(huán)境,使其可以在任何地方復(fù)制。

在 docker-compose.yml 中定義組成應(yīng)用程序的服務(wù),以便它們可以在隔離的環(huán)境中一起運(yùn)行。

最后,運(yùn)行dcoker-compose up,Compose 將啟動并運(yùn)行整個(gè)應(yīng)用程序。

1. 編輯docker-compose.yml文件進(jìn)行多鏡像指定

apache:          # apache 服務(wù)
    image: rhel7:v1  # 父鏡像名稱
    expose:
        - 80   # 暴露端口
    volumes:     # 掛載卷
        - ./web/:/var/www/html

nginx:          # nginx 服務(wù)
    image: nginx   # 父鏡像
    expose:    
        - 80   # 暴露端口

haproxy:         # haproxy 服務(wù)
    image: haproxy  # 父鏡像
    volumes:     # 掛載卷
        - ./haproxy:/usr/local/etc/haproxy
    links:      # 關(guān)聯(lián)容器
        - apache
        - nginx
    ports:      # 端口映射
        - "8080:80"
    expose:      # 暴露的服務(wù)端口
        - 80

2. 編輯haproxy的配置文件

global   # 全局配置,日志信息
    log 127.0.0.1 local0
    log 127.0.0.1 local1 notice
defaults
    log global
    option httplog
    option dontlognull
    timeout connect 5000ms
    timeout client 50000ms
    timeout server 50000ms
    stats uri /status
frontend balancer
    bind 0.0.0.0:80      # 監(jiān)聽端口
    default_backend web_backends  # 默認(rèn)后后端
backend web_backends
    balance roundrobin
    server weba apache:80 check  # 后端a apache 與 .yml 文件中的 links 中的內(nèi)容對應(yīng)
    server webb nginx:80 check

查看所需文件是否充分

[root@foundation21 compose]# ls
docker-compose.yml haproxy web
[root@foundation21 compose]# pwd
/tmp/docker/compose
# 查看文件隸屬關(guān)系
[root@foundation21 compose]# tree
.
├── docker-compose.yml
├── haproxy
│  └── haproxy.cfg
└── web
  └── index.html

2 directories, 3 files

在cmopose目錄喜下執(zhí)行docker-compose up 命令進(jìn)行同時(shí)啟動多鏡像

在瀏覽器中進(jìn)行查看:

haproxy 實(shí)現(xiàn)了后端web服務(wù)器的負(fù)載均衡

以上這篇docker利用單個(gè)鏡像映射到多個(gè)端口操作就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

標(biāo)簽:海西 南通 臨汾 延安 辛集 忻州 邯鄲 西安

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《docker利用單個(gè)鏡像映射到多個(gè)端口操作》,本文關(guān)鍵詞  docker,利用,單個(gè),鏡像,映,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《docker利用單個(gè)鏡像映射到多個(gè)端口操作》相關(guān)的同類信息!
  • 本頁收集關(guān)于docker利用單個(gè)鏡像映射到多個(gè)端口操作的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章