2017-12-11 6 views
2

Docker에 기본 구성 요소가 있고 docker-compose으로 조정 된 프로젝트가 있습니다. 그 중 일부는 선택 사항이며 런타임에 추가 할 수 있습니다.프로그래밍 방식으로 도커에 프로젝트 작성 프로젝트 작성

나는 그것을 달성하기 위해에 대한 두 가지 방법을 생각할 수 있습니다 :

  • 새로운 serviceA.yml 작성 파일을 만들고
  • 내 기본 compose.ymlserviceA 추가 별도의 프로젝트로 실행하고
다시 실행

이렇게하는 것이 바람직한 옵션은 무엇입니까?

키워드를 사용하여 docker-compose 개의 파일을 결합 할 수 있지만 런타임에 추가 할 수있는 서비스가 다양하기 때문에 적합하지 않다고 생각했습니다.

답변

5

나는 보통 having multiple yml files이됩니다.

은 그럼 당신은 실행할 수있는 서비스를 나타 내기 위해 고정 표시기-작성 명령에 -f 여러 플래그를 추가 할 수 있습니다. 가진 예를 들어

:

  • 고정 표시기-compose.yml : 추가/옵션 서비스를 포함 : 기본적인 서비스를
  • 고정 표시기 - 작성 - 추가 - services.yml을 포함.

    docker-compose -f docker-compose.yml -f docker-compose-additional-services.yml up 
    

    을 그리고 그것은 모든 서비스를 시작합니다 :

당신은 시작 실행할 수 있습니다. 그들은 하나의 파일에있는 것처럼 참조 할 수 있도록 모든 서비스가 통합되어

주 ( depends_on, 링크) 다른 하나 개의 파일에서 서비스를 제공합니다.

+1

동일한 기술을 사용합니다. 핵심 서비스와 함께 주요 작성 파일과 ELK 스택, 데이터 막 경고 등을위한'monitoring.yml' 파일이 있습니다. 잘 작동합니다. – Alkaline