Container/Docker Compose

도커 컴포즈 환경변수 설정 방법

2mukee 2023. 8. 11. 23:54
320x100
320x100

같은 디렉터리에 .env 파일 위치

: docker-compose.yml 파일과 .env 파일을 같은 디렉터리 내에 위치

version: "3.8"

services:
  web:
    build: .

    ports:
      - ${PORT}:${PORT}

: .env 파일을 이용한 가장 깔끔한 방법

: 각종 지시자를 유동적으로 제어할 수 있음

 

 

 

 

 

environment 지시자

version: "3.8"

services:
  web:
    build: .

    environment:
      - TZ=Asia/Seoul
      - DBURL=http://db:27017/data

    ports:
      - 8000:8000
  
  db:
    image: mongo:5.0.5

    volumes:
      - ../data:/data/db

: 빌드 및 런타임 시 이미지 및 컨테이너에서만 유효한 환경변수로, docker-compose 파일의 지시자에서 사용할 수 없음

 

 

 

 

 

env_file 지정

version: "3.8"

services:
  web:
    build: .

    environment:
      - TZ=Asia/Seoul
      - DBURL=http://db:27017/data

    # 컨테이너 내부에서 사용할 .env
    env_file:
      - ../wip_main/.env
      
    ports:
      - 8000:8000
  
  db:
    image: mongo:5.0.5

    volumes:
      - ../data:/data/db

: 마찬가지로 이미지 빌드 및 컨테이너 런타임에만 유효

: 환경변수 파일을 통해 여러 환경변수를 정의할 수 있음

 

 

 

 

 

docker-compose 명령 옵션

docker compose --env-file ./.env config

 

- docker compose config에 대해

https://docs.docker.com/engine/reference/commandline/compose_config/

 

 

 

 

Reference

 

Ways to set environment variables in Compose

 

docs.docker.com

 

[Docker] docker-compose 파일에서 환경설정(.env file) 사용하기

docker-compose를 사용할 때 환경 마다 다른 설정값을 사용하고 싶을 때가 있다.

blog.leocat.kr

 

Ways to set environment variables in Compose

 

docs.docker.com

 

300x250
728x90