Docker Compose的使用


一、背景

  繼上篇文章之后,學習使用Docker Compose(實際項目中需要做對應的變化)

 

二、docker-compose 安裝

  官網使用最新版進行安裝
  https://github.com/docker/compose/releases/

例如:
1. 安裝當前穩定版本

curl -L https://github.com/docker/compose/releases/download/1.24.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose

2. 對二進制文件應用可執行權限

chmod +x /usr/local/bin/docker-compose

3. 查看版本(也可以校驗是否安裝成功)

docker-compose --version

 

三、 docker-compose 命令簡介

如命令:

docker-compose up -d

up

  啟動所有在Compose問中定義的容器,並且把它們的日志信息匯集在一起。通常會添加-d參數(在up后面),讓容器在后台執行

start
  啟動指定的已經存在的容器

build
  重新建造由Dockerfile構建的鏡像。

ps
  獲取由Compose管理的容器的狀態信息

run
  啟動一個容器,並允許一個一次性的命令。被連接的容器會同時啟動,除非用了 --no-deps參數。

logs
  匯集由Compose管理的容器的日志,並以彩色輸出。

stop
  停止容器,但不會刪除它們

rm
  刪除已停止的容器。不要忘記使用-v參數來刪除任何由Docker管理的數據卷

說明:

  一個普通的工作流程以docker-compose up -d名利啟動應用程序開始。docker-compose logs和ps命令可以用來驗證應用程序的狀態,還能幫助調試。
修改代碼后,先執行docker-compose build 構建新的鏡像,然后執行docker-compose up -d 取代運行中的容器。注意,Compose會保留原來容器中所有舊的數據卷,這意味着即使容器更新后,數據庫和緩存也依舊在容器內(這很可能造成混淆,因此要特別小心)。
  如果你修改了Compose的YAML文件,但不需要構建新的鏡像,可以通過up -d參數使Compose以新的配置替換容器。如果想要強制停止Compose並重新創建所有容器,可以使用--force-recreate選項來達到目的。

 

四、 docker-compose.yml 文件模板

#具體的版本號,請參考官網https://docs.docker.com/compose/compose-file/
version: '3.7'
services:
    #聲明構建容器的名稱,docker-compose start和stop命令可以使用
    testhttpweb:
    #使用指定目錄下的Dockerfile進行構建
    build: .
    #相當於docker run命令的-p參數,用於聲明對外開放的端口
    ports:
        - "5000:5000" 
       - "8010:80"

五、簡單使用

1. 在/root/Root/DefaultHttp的路徑下創建yml文件(請參考上一步的模板)

2. 執行命令運行容器

docker-compose up -d

從上圖可以看出,即使沒有創建image也會成功(會自動進行創建)

3. 查看鏡像

docker images

defaulthttp_testhttpweb 為自動創建的鏡像

4. 停止和刪除容器

docker-compose stop testhttpweb

docker-compose rm testhttpweb

 

六、總結

  實現了docker-compose的安裝、命令介紹、簡單使用

 

參考資料:

  《Docker開發指南》

  https://www.jianshu.com/p/658911a8cff3


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM