簡介
docker-compose 是容器編排工具提针,使用 YAML 作為配置文件,根據(jù)配置啟動曹傀、停止辐脖、重啟一組容器。
安裝
// 下載 docker-compose 可執(zhí)行文件(需要管理員權(quán)限)
sudo curl -L https://github.com/docker/compose/releases/download/1.5.2/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
// 給可執(zhí)行文件賦予執(zhí)行權(quán)限(需要管理員權(quán)限)
sudo chmod +x /usr/local/bin/docker-compose
安裝中遇到過得問題及解決辦法
使用
sudo
將可執(zhí)行文件下載到/usr/local/bin
目錄下還是提示權(quán)限不足
可以將可執(zhí)行文件下載到有權(quán)限的目錄皆愉,然后再使用sudo
將可執(zhí)行文件再移動到/usr/local/bin
下載后執(zhí)行 docker-compose 命令提示版本不正確
前往 docker-compose 下載頁面 選擇適合當(dāng)前 docker 版本的 docker-compose
docker-compose.yml 例子
最基礎(chǔ)的 ExpressJS + MongoDB 組成的 web 應(yīng)用
mongodb: // 容器名
image: mongo:3.0.7 // 使用的鏡像
volumes:
- ./mongodb/data/db:/data/db // 掛在目錄嗜价,宿主機(jī)目錄:容器內(nèi)目錄
ports:
- 27017:27017 // 端口映射,宿主機(jī)端口:容器內(nèi)端口
command: /bin/bash -c "mongod" // 容器啟動命令
nodejs:
image: nodejs:5.1.0
volumes:
- ./nodejs/code:/code
ports:
- 3000:3000
command: /bin/bash -c "cd /code && npm install && npm start"
docker-compose 常用命令
所有命令必須在包含 docker-compose.yml 目錄下運(yùn)行
// 后臺啟動容器
docker-compose up -d // 修改 docker-compose.yml 后再次運(yùn)行會重新構(gòu)建啟動有修改的容器
// 停止容器
docker-compose stop
// 重啟容器
docker-compose restart
// 刪除容器
docker-compose rm // 出現(xiàn)刪除確認(rèn)提示幕庐,y: 確認(rèn)刪除久锥,n: 取消刪除