[62] 환경 변수 & '.env' 파일 작업

    728x90
    반응형

    환경 변수 & '.env' 파일 작업

    Docker의 인수(ARG)와 환경 변수(ENV) 이해하기

     

    개요

    인수(ARG)와 환경 변수(ENV)의 차이

    • ARG : 빌드 타임에 사용 (Dockerfile 내부)
    • ENV: 런타임에 사용 (실행 중인 컨테이너)

     

    환경 변수(ENV) 사용

    Dockerfile에서 설정

    ENV PORT 80
    EXPOSE $PORT

     

    실행 시 설정 방법

    # 직접 설정
    docker run --env PORT=8000 ...
    docker run -e PORT=8000 ...
    
    # 환경변수 파일 사용
    docker run --env-file ./.env ...

     

    애플리케이션에서 사용

    // Node.js 예시
    const port = process.env.PORT;

     

     

    사용 사례

    포트 설정

    • 개발/프로덕션 환경별 다른 포트 사용
    • 동적 포트 할당

     

    구성 설정

    • 데이터베이스 연결 정보
    • API 엔드포인트
    • 기타 설정 값

     

    보안 고려사항

    민감한 정보

    • Dockerfile의 ENV에 직접 포함하지 않기
    • 별도의 환경변수 파일 사용
    • 소스 컨트롤에서 제외

     

    이미지 히스토리

    docker history <이미지>  # ENV 값 확인 가능

     

     

    장점

    유연성

    • 동일 이미지로 다양한 환경 구성
    • 런타임에 설정 변경 가능

     

    관리 용이성

    • 설정 중앙화
    • 환경별 구성 분리

    이러한 기능을 통해 더 유연하고 안전한 Docker 환경을 구성할 수 있습니다.

     

     

     

     

     

     

    참고

    https://www.udemy.com/course/docker-kubernetes-2022

    728x90
    반응형

    댓글