2016-11-10 1 views
2

docker가 변수 대체에 사용하는 env 파일을 지정할 수 있습니까? 현재는 ".env"로 기본 설정되어 있지만 다른 env가 있어야하는 파일 작성 기능이 다릅니다.env 파일 지정자 작성 지정 사용

+0

이 항목은 https://docs.docker.com/compose/environment-variables/에서 찾았지만 각 컨테이너마다 env_file이 필요합니다. 전체 도커 작성 파일에 대해 전역으로 설정할 수 있습니까? 기본 .env? – Zuriar

답변

1

여기에는 상속을 사용할 수 있습니다. 환경을 설정하는 "기본"서비스가 하나있는 경우 다른 모든 서비스는 해당 환경을 상속 할 수 있습니다.

예 :

version: "2" 

services: 
    base: 
    env_file: 
     - my_env.txt 

    web: 
    extends: 
     service: base 
    image: foo 

    database: 
    extends: 
     service: base 
    image: foo-db 

위의 예는 같은 파일에 모든 것을 가지고 있지만, 당신은 또한 base 서비스가 base.yaml 파일에있는 것 여러 개의 파일로이를 분할 할 수 있습니다. extends 섹션에 file: base.yaml을 추가하기 만하면됩니다. the documentation here을 참조하십시오.

이 방법을 사용하여 모든 컨테이너에 대해 프록시 변수를 설정합니다. 쉘에서 프록시 환경 변수를 선택하는 proxy-app 서비스를 정의하는 proxy.yaml 파일이 있습니다. 내 모든 실제 서비스는 proxy-app 서비스를 확장하므로 해당 서비스의 환경 설정을 상속받습니다.