Docker_Docker服務編排6

花溪月影發表於2024-05-29

一、服務編排概念

 微服務架構的應用系統中一般包含若干個微服務,每個微服務一般都會部署多個例項,如果每個微服務都要手動啟停,維護的工作量會很大。

  • 要從Dockerfile build image 或者去dockerhub拉取image
  • 要建立多個container
  • 要管理這些container(啟動停止刪除)

 服務編排:按照一定的業務規則批次管理容器

二、Docker Compose 概述

 1、介紹

  Docker Compose是一個編排多容器分散式部署的工具,提供命令集管理容器化應用的完整開發週期,包括服務構建,啟動和停止。使用步驟:
  1. 利用 Dockerfile 定義執行環境映象
  2. 使用 docker-compose.yml 定義組成應用的各服務
  3. 執行 docker-compose up 啟動應用

  

 2、安裝使用

  1. 安裝Docker Compose

# Compose目前已經完全支援Linux、Mac OS和Windows,在我們安裝Compose之前,需要先安裝Docker。下面我 們以編譯好的二進位制包方式安裝在Linux系統中。 
curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
# 設定檔案可執行許可權 
chmod +x /usr/local/bin/docker-compose
# 檢視版本資訊 
docker-compose -version

  2. 解除安裝Docker Compose

# 二進位制包方式安裝的,刪除二進位制檔案即可
rm /usr/local/bin/docker-compose

  3. 使用docker compose編排nginx+springboot專案

   3.1 建立docker-compose目錄

mkdir ~/docker-compose

   3.2 編寫 docker-compose.yml 檔案

version: '3'
services:
  nginx:
   image: nginx
   ports:
    - 80:80
   links:
    - app
   volumes:
    - ./nginx/conf.d:/etc/nginx/conf.d
  app:
    image: app
    expose:
      - "8080"

   3.3 建立./nginx/conf.d目錄

mkdir -p ./nginx/conf.d

   3.4 在./nginx/conf.d目錄下 編寫itheima.conf檔案

server {
    listen 80;
    access_log off;

    location / {
        proxy_pass http://app:8080;
    }
   
}

   3.5 在~/docker-compose 目錄下 使用docker-compose 啟動容器

docker-compose up

   3.6 測試訪問

http://192.168.149.135/hello

三、案例

相關文章