[英]Docker: Dockerfile vs docker-compose.yml
我有一個Dockerfile
如下:
FROM docker/whalesay:latest
RUN apt-get update && apt-get install -y fortunes
CMD while true; do /usr/games/fortune -a | cowsay; sleep 2; done
我已將上面的Dockerfile
為image: Dockerfile
docker-whale
我想為上面的圖片寫一個docker-compose.yml
。 我的理解是你可以使用docker-compose運行多個容器。
所以,如果我想運行5 docker-compose.yml
docker-whale
圖像, docker-compose.yml
是怎么樣的?
你可以把這個docker-compose.yaml
旁邊的Dockerfile
:
version: '2'
services:
docker-whale:
image: docker-whale
build: .
然后執行以下命令:
# build docker image
docker-compose build
# bring up one docker container
docker-compose up -d
# scale up to three containers
docker-compose scale docker-whale=3
# overview about these containers
docker-compose ps
# view combined logs of all containers
# use <ctrl-c> to stop viewing
docker-compose logs --follow
# take down all containers
docker-compose down
version:"3"
services: docker-whale:
image:docker-whale
deploy:
replicas:5
resources:
limits:
cpus:"0.1"
memory: 50M
restart_policy:
condition: on-failure
ports: "80:80"
...
以上是你的docker-compose.yml的樣子。 這個docker-compose.yml告訴Dockers執行以下操作:
參考: https : //docs.docker.com/get-started/part3/#docker-composeyml
希望能幫助到你
我假設你想要運行5個碼頭鯨魚集裝箱而不是5個圖像。
在您的情況下,compose.yml將不包含有關容器數量的信息。 您需要使用scale命令
docker-compose scale <service-name>=5
泊塢窗,compose.yml
docker-whale:
image: docker-whale
然后在同一文件夾中運行:
docker-compose up -d
docker-compose scale docker-whale=5
這假設您的應用程序是可識別比例的,但您仍然可以在docker-compose.yml中寫入5個條目,這是螺絲刀但有時很有用:
docker-whale-1:
image: docker-whale
docker-whale-2:
image: docker-whale
docker-whale-3:
image: docker-whale
docker-whale-4:
image: docker-whale
docker-whale-5:
image: docker-whale
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.