티스토리 뷰

TIL WIL

항해 99 TIL-27 도커 환경변수

타올이 2022. 3. 26. 23:16
반응형

1. 구조

.env파일은 docker-compose와 같이 최상단에 있어야 한다.

 


2. .env 파일

PORT=8080
SQUARE_WITH_ME_PASSWORD=12345678

port는 서버 listen 할 포트번호이고 square with me password는 프로젝트 db(mysql)의 root password가 있다.

이 외에도 토큰의 secret key나 kakao 로그인을 위한 api key, secret key등이 있지만 생략

 


3. docker-compose.yml

version: "3.5"
networks:
  nemo-net:
services:
  mysql:
    networks:
      - nemo-net
    image: mysql
    restart: always
    env_file:
      - .env
    ports:
      - "3306:3306"
    environment:
      - MYSQL_ROOT_PASSWORD="${SQUARE_WITH_ME_DB_PASSWORD}"
  server:
    networks:
      - nemo-net
    build:
      context: .
      dockerfile: Dockerfile.dev
    restart: always
    env_file:
      - .env
    ports:
      - "${PORT}:${PORT}"
    depends_on:
      - mysql
    links:
      - mysql

 

.env 파일을 사용 시 env_file이라는 옵션을 넣지않고 "$something" 으로 사용 할 수 있다.

아래는 reference.

docker-compose의 env파일 및.env 파일의 차이 - coder-question-ko.com

 

하지만 실행해본 결과 MYSQL_ROOT_PASSWORD가 empty로 설정되는 오류가 있었고,

env_file 옵션을 넣고 다시 실행한 결과 기대한 대로 실행되었다.

 
반응형

'TIL WIL' 카테고리의 다른 글

도커 사용법  (0) 2022.03.26
항해 99 TIL-26 Nginx  (0) 2022.03.21
항해 99 TIL-25 CI/CD  (0) 2022.03.20
항해 99 TIL-24 Swagger (in Node.js)  (0) 2022.03.16
항해 99 TIL-23 MVC  (0) 2022.03.15
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/09   »
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
링크
글 보관함