Docker Compose的使用

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

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

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

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

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也會成功(會自動進行創建)

  1. 查看鏡像

docker images

defaulthttp_testhttpweb 爲自動創建的鏡像

  1. 停止和刪除容器

docker-compose stop testhttpweb

docker-compose rm testhttpweb

六、總結

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

參考資料:

  《Docker開發指南》

  https://www.jianshu.com/p/658911a8cff3
原文地址https://www.cnblogs.com/zhizihuakai/p/11296743.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章