beadss / docker-study

0 stars 0 forks source link

week(2): stack file 설명 #5

Open beadss opened 5 years ago

beadss commented 5 years ago

stack file은 기본적으로 compose file과 거의 동일합니다. https://docs.docker.com/v17.12/docker-cloud/apps/stack-yaml-reference/

다만 몇가지 차이점들이 있는데, 이번에는 그 부분만 정리해 보겠습니다.

compose file에만 있고 stack 파일에는 없는 것

compose file에는 없고 stack 파일에만 있는 것

autodestroy

서비스에 소속된 컨테이너들이 모두 종료되면, 서비스도 종료시킬지 여부(기본값 no) 가능한 값: no, on-success, always

autoredeploy

이미지가 레지스트리에 업데이트 되면, 자동으로 컨테이너들을 재배포할지 여부(기본값 false)

deployment_strategy

컨테이너들을 배포할 때, 배포 대상 노드를 어떤 방식으로 선정할지 설정함 https://docs.docker.com/v17.12/docker-cloud/infrastructure/deployment-strategies/

가능한 값:

net

expose file에서의 network_mode와 동일한 역할. 단, bridge와 host만 지원됨

restart

expose file에서의 restart_policy와 역할은 동일한데, 옵션들이 좀 다름 컨테이너가 중지 됐을 때, 재시작 시킬지 여부

가능한 값: no, on-failure, always

roles

docker cloud api를 호출하기 위한 토큰 값이 담겨있는 DOCKERCLOUD_AUTH라는 환경변수를 제공받을지 여부 DOCKERCLOUD_AUTH는 아래처럼 사용됨 curl -H "Authorization: $DOCKERCLOUD_AUTH" -H "Accept: application/json" https://cloud.docker.com/api/app/v1/service/

가능한 값: global(값이 한 종류인데, 왜 true, false가 아닐까..)

sequential_deployment

순차적으로 배포할지 여부(기본값 false) https://docs.docker.com/v17.12/docker-cloud/apps/service-scaling/

sequential deployment vs parallel deployment

tags

어떤 태그들을 지닌 노드에 배포할지 여부 태그 여러개를 입력받음

tags:
 - staging
 - web

target_num_containers

해당 서비스에서 돌아갈 컨테이너의 개수 deploy.replicas라는 설정 값이 따로 있는데, 이게 뭔지 잘 모르겠음(복제본마다 증가할 단위인가?)

volumes_from

다른 서비스의 모든 볼륨을 마운트 합니다. 파일시스템과 서비스의 강한 연결을 제거하기 위해, 볼륨 전용 서비스를 도입 했을때 자주 쓰입니다.

volumes_from:
 - database
 - mongodb.staging