티스토리 뷰

반응형

1. 과정

필자는 docker-compose시 웹 애플리케이션에 env파일이 들어가는 것을 원치 않아서 어떻게 해결해야 할 지 고민이 많았다.

처음에 웹 애플리케이션에 해당하는 dockerfile 자체에서 .dockerignore 파일을 설정하여 처리하려고 하였지만 ignore가 되지 않았다.

 

2. 해결방안

그래서 해당 '.env'파일을 최상단으로 빼놓고 'docker-compose.yml' 와 동일한 위치에 두었다.

그 결과 웹 애플리케이션에서 '.env'파일을 무시하는데 성공하였다.

-backend
	-entry
    Dockerfile
    uwsgi.ini
-config
	-.env
-nginx
	Dockerfile
    nginx.conf
    nginx-app.conf
    uwsgi_params
docker-compose.yml
.dockerignore
 web:
    build: ./backend
    container_name: main.django
    command: uwsgi uwsgi.ini
    env_file: 
      - ./config/.env
    volumes:
      - ./backend/entry:/srv/code/entry
      - ./log:/var/log
    depends_on: 
      - db
    ports: 
      - "8000:8000"

"env_file" 에 해당 ".env"파일 위치를 선정해주면 해당 환경변수 값을 가져온다.

 

확인하는 방법은 

docker-compose config
반응형
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함