Docker常用的編排管理工具(批量管理)

  前言:我們都知道docker的好處,總而言之就是多快好省。那我們要能夠玩轉docker就得知道配合docker使用的兩種工具-------Supervisor和Compose.我來分別介紹這兩種工具和如何使用。


                         Docker常用的編排管理工具(批量管理)       


   Supervisor:

            使用進程管理工具 supervisor 來管理容器中的多個進程。使用 Supervisor 可以更好的控制、管理、重啓我們希望運行的進程。它是c/s系統。


演示:

    在這裏我們演示一下如何同時使用 ssh apache 服務。


首先創建一個 Dockerfile,內容和各部分的解釋如下。

創建一個dockerfile的目錄

wKiom1mAKbjBJPxuAABii84ljpM416.png

dockerfile文件內容:

wKioL1mAKlrCAiv1AAHkmL_ANW4523.png

supervisor 配置文件內容:

wKioL1mAKu3zkOYBAACaqHTgJzU698.png


第一段 supervsord 配置軟件本身,使用 nodaemon 參數來運行。nodaemon=true 如果是truesupervisord進程將在前臺運行,默認爲false,也就是後臺以守護進程運行。

下面2段包含我們要控制的 2 個服務。每一段包含一個服務的目錄和啓動這個服務的命令

/docker/apache目錄內容列表!

wKioL1mAKzyjalufAAA6OkZuAw8199.png


使用方法

創建 p_w_picpath

# docker build -t centos:supervisord 

wKiom1mAK6ng4ryOAACnRhJr-X4201.png


創建完鏡像(p_w_picpath)後,我們可以是用docker p_w_picpaths命令查看已經創建好的鏡像。

我們利用這個p_w_picpath來啓動supervisor容器:

wKioL1mALL2yECTfAACYrsokkcU093.png

測試:訪問容器提供的webssh服務


注意:這裏我們用到的是dockerfile文件來製作鏡像的,當然我們還可以用docker commit命令來創建鏡像。兩者是有區別的。前者直接在dockerfile文件中完成鏡像製作,這樣也方便後期的更改添加新功能,而使用docker commit創建完成後,再在容器裏配置服務,缺點是不利於隨時添加新功能(添加信功能後還需要重新生成鏡像),同時也不利於別人來識別這個鏡像裏的功能。




二:compose編排部署基於docker的應用


使用:

安裝Docker-compose,我們需要先安裝pip

使用wget下載:wget  https://bootstrap.pypa.io/get-pip.py

安裝:

1.pip install docker-compose

2.ln -s /usr/bin/docker-compose  /usr/local/bin/

3.安裝完成後就可以使用dockercompose命令了。


我們使用compose工具實驗思路:

首先,使用Dockerfiledocker  commit來定義你的應用環境

第二步,用一個docker-compose.yml來定義你的應用,他們可以在下個互隔離的容器中組成你的應用。

第三步,執行docker-composeup  -d來啓動你的應用,它會根據docker-compose.yml的設置來pull/run相關的容器。

 

我們用這個圖來表示這個項目的工作目錄結構:

wKiom1mAL9nzkEY4AACMm29l_Hk323.png


Docker-haproxy就是一個項目的工作目錄

這個目錄下創建兩個子目錄,就是我們需要的兩個應用目錄。

docker-haproxy下我們還需要有一個模板文件docker-compose.yml,它可以創建隔離的容器。

最後使用docker-compose up -d 來啓動應用。

注意:在這些配置文件中,我們需要把要用到的光盤鏡像準備好。


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