1. 程式人生 > >Docker 管理工具

Docker 管理工具

一. Docker Machine 二. Docker Compose      2.1 簡介      2.2 實戰(明天再總結)
三. Docker Swarm 一. Docker Machine           主要解決從 0 到 Docker。比如說我有 10 臺 Docker 主機,那麼最後可以在一臺機子上管理這 10 臺 Docker 主機,包括其 Docker 建立等。最後,可以和 Docker Swarm 進行整合,建立一個 Docker 的叢集。           總的來說,Docker Machine 是用來管理分散式Docker 主機的。 如果沒有 Docker Machine:
          那麼在分散式 中,我們需要登入每個主機,安裝Docker,並且需要開發一套工具來管理 每個Docker 主機的一些狀況,最後,你在本地開發,最後部署到公有云平臺,希望能儘量減少這兩者的差異。 可以讓下圖的模式得到最大的簡化:
Ps:目前還沒涉及到 分散式的Docker 主機,暫時不考慮這個,知道些概念即可。 二. Docker Compose 2.1 Docker Compose 簡介:           Docker Compose 主要用來 定義 和 執行 多個 Docker 容器的工具。           主要通過 docker-compose.yml  檔案和 docker-compose up 命令 來管理  Docker Compose 可以包含以下的內容: 映象:
  1. Image:ubuuntu:latest
  2. build:/path/to/build/dir
  3. dockerfile : 使用指定的 Dockerfile
  4. command:覆蓋預設命令。
容器配置:     
  1. links:
    1. -db : database                 //服務的名字:別名
  2. external_links:
    1. -project_redis_1               //可以去連線一個不是由docker compose 來管理的一個 映象。
  3. ports:
    1. -”3000”       //不指明主機埠,那麼會隨機分配一個主機的埠。
    2. -“8080:3000” 
  4. expose:
    1. -”3000”   
  5. volumes:
    1. - . : /code                     //意思是把當前目錄掛載container 的 到 /code 目錄下 
  6. environments:
    1. -MYSQL_USER=mysql
寫  .yml 檔案的一個好處:
  1. 可以到處 複製使用, 如果我們在終端中 docker run 接上一大截 引數,複製有可能會出錯什麼的。
  2. 可以宣告多個 .yml 檔案。
Docker Compose 命令集:
  1. 管理映象: build / pull。
  2. 管理服務:up / start / stop / kill / rm / scale /   
  3. 服務狀態:ps / logs / port 
  4. 一次性執行: run
  2.2 Docker Compose 實戰: 三. Docker Swarm          Docker Swarm 主要用來管理 Docker 主機叢集,2014.12月 才出的一個新技術。           一開始我們是在單機上執行 Docker,如下圖:            分散式後,我們會改成這種模式:

Ps:目前還沒涉及到 分散式的Docker 主機,暫時不考慮這個,知道些概念即可。