Docker ComposeDocker 編排服務(wù)
Docker Compose 是 Docker 編排服務(wù)的一部分,Machine 可以讓用戶在其它平臺(tái)快速安裝Docker,Swarm 可以讓 Docker 容器在集群中高效運(yùn)轉(zhuǎn),而 Compose 可以讓用戶在集群中部署分布式應(yīng)用。簡單的說,Docker Compose 屬于一個(gè)“應(yīng)用層”的服務(wù),用戶可以定義哪個(gè)容器組運(yùn)行哪個(gè)應(yīng)用,它支持動(dòng)態(tài)改變應(yīng)用,并在需要時(shí)擴(kuò)展。
使用Compose的第一步是使用YAML文件來定義容器應(yīng)用的狀態(tài):
containers:
web:
build: .
command: python app.py
ports:
- "5000:5000"
volumes:
- .:/code
links:
- redis
environment:
- PYTHONUNBUFFERED=1
redis:
image: redis:latest
command: redis-server --appendonly yes
上面的YAML文件定義了兩個(gè)容器應(yīng)用,第一個(gè)容器運(yùn)行Python應(yīng)用,并通過當(dāng)前目錄的Dockerfile文件構(gòu)建。第二個(gè)容器是從Docker Hub注冊中心的Redis官方倉庫中構(gòu)建。links指令用來定義依賴,意思是Python應(yīng)用依賴于Redis應(yīng)用。
定義完成后,通過下面的命令來啟動(dòng)應(yīng)用:
% docker up
簡單吧?通過YAML文件定義的容器應(yīng)用已經(jīng)成功啟動(dòng)起來,啟動(dòng)過程會(huì)按照YAML的配置嚴(yán)格運(yùn)行。Python容器通過Dockerfile自動(dòng)構(gòu)建,同時(shí)從注冊中心拉取Redis容器構(gòu)建。 links指令關(guān)注的是Python和Redis容器之間的依賴關(guān)系,Redis容器是最先開始構(gòu)建,緊隨其后的是Python容器。
介紹內(nèi)容來自 DockerOne
