四、Docker-Compose 安裝
Compose 定位是“定義和運行多個Docker容器的應用”。由Python編寫,實際調用Docker服務提供的API對容器進行管理。前身是開源項目Fig。
使用一個Dockerfile模板文件,可以讓用戶很方便地定義一個單獨的應用容器。
而處理多個容器相互配合來完成某項任務的情況,就需要使用Compose了。
Compose它允許用戶通過一個單獨的docker-compose.yml模板文件(YAML格式)來定義一組相關聯的應用容器為一個服務棧( 項目)。
幾個概念:
任務:一個容器被稱為一個任務。任務擁有獨一無二的 ID,在同一個服務中的多個任務序號依次遞增
服務:某個相同應用鏡像的容器副本集合,一個服務可以橫向擴展為多個容器實例
服務棧:由多個服務組成 ,相互配合完成特定業務 Web 應用服務、數據庫服務共同構成 Web 服務錢 ,一般由一個 docker-cornpose.yml 文件定義
Compose 默認管理對象是服務棧,通過子命令對棧中的多個服務進行便捷的生命周期管理。
安裝和卸載
安裝:
1、Python的pip工具安裝
是將 Compose 當作一個 Python 應用從 PyPI 源中安裝。
yum -y install epel-release
yum -y install python-pip
pip install --upgrade pip
sudo pip install -U docker-compose
安裝成功后,可以查看 docker compose 命令的基本用法。
可以添加 bash 補全命令:
curl -L https://raw.githubusercontent.com/docker/compose/1.24.0/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose
2、二進制包
官方編譯好的二進制包 https://github.com/docker/compose/releases
將這些 進制文件下載后直接放到執行路徑下,並添加執行權限即可
curl -L https://github.com/docker/compose/releases/download/1.24.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
可以使用 docker compose version 命令來查看版本信息
3、容器中執行
Compose既然是一個Python應用,自然也可以直接用容器來執行它。
curl -L https://github.com/docker/compose/releases/download/1.24.0/run.sh /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
它其實是下載了 docker /compo se 鏡像井運行
前兩種方式是傳統方式, 適合本地環境下安裝使用;后一種方式則不破壞系統環境,更適合雲計算場景。
卸載:
如果是二進制包安裝,直接刪除二進制文件:
$ sudo rm /usr/local/bin/docker-compose
如果是通過 Python pip 工具安裝的:
$ sudo pip uninstall docker compose