Docker compose 安裝以及使用
阿新 • • 發佈:2018-12-12
Docker compose 是用來編排很多docker容器時啟動順序的工具,單個容器可以使用docker run 來啟動,兩三個也可以用docker run 來啟動,但是,實際生產環境中,一個專案需要很多docker容器相互依賴,這時候想要一個一個啟動費事費時。這時候就需要一個工具來解決這個問題。docker compose 的出現,解決了一個專案多容器啟動時的複雜性。
環境:centos7.2
主機:192.168.1.200
一:安裝
1:從github上下載docker-compose二進位制檔案安裝
1 curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-compose-`uname -s`-`uname -m` -o /usr/bin/docker-compose2 chmod +x /usr/bin/docker-compose
注:如果下載的路徑沒有在/usr/bin下面,請做軟連線到/usr/bin下。
2:pip安裝
1 pip install docker-compose
注:需要安裝python才有pip功能,Linux 自帶python2.7,但沒有pip
二:使用
實驗目的:使用docker-compose 編排工具搭建wordpress容器。
1:建立wordpress工作目錄。
1 mkdir /docker/wordpress/ 2 cd /docker/wordpress/
2:編輯compose.yml(compose配置檔案)
1 vim docker-compose.yml
wordpress: image: wordpress links: - db:mysql ports: - 80:80 db: image: mariadb volumes: - /docker-compose/mysql/:/var/lib/mysql environment: MYSQL_ROOT_PASSWORD: 123456
註解:以下程式碼用於解釋,需要程式碼請複製上面的程式碼。
1 wordpress: 容器模組2 image: 映象模組 3 wordpress 映象名稱,這裡是從docker hub下載wordpress映象。 4 links: link模組,用來連結2個容器之間的通訊,容器內直接通訊。官方不推薦使用這種方式來進行容器內的通訊,後續版本會移除。官方文件:https://docs.docker.com/network/links/ 5 - db:mysql db是wordpress容器在link下mysql的別名。 6 ports: ports模組,用於埠對映。 7 - 80:80 將wordpress容器內的80埠對映到宿主機的真實80埠上,就可以通過訪問真實主機(宿主機)的埠訪問到容器內的80埠。 8 db: 容器模組 9 image: 映象模組 10 mariadb 從docker hub 下載mariadb映象。 11 volumes: 檔案系統模組,由於設計到docker工作原理,請自行移步至官方文件理解:https://docs.docker.com/storage/volumes/ 12 - /docker-compose/mysql/:/var/lib/mysql 將宿主機的/docker-compose/mysql/目錄對映到容器內/var/lib/mysql目錄。兩個目錄中的檔案實時同步。下篇文件詳細講解。
13 environment: 引數模組
14 MYSQL_ROOT_PASSWORD: 123456 指定mariadb容器的初始密碼為123456
3:執行wordpress專案
注:執行時必須在compose.yml(compose配置檔案)目錄下執行。
1 cd /docker/wordpress/ 2 docker-compose up -d
注:-d 後臺執行。
4:檢視是否啟動成功,瀏覽器訪問:192.168.1.200