• 컨피그 맵, 시크릿
    • 컨테이너화된 애플리케이션에 설정 데이터를 전달 하는 방법 4가지
      • 모든 설정을 애플리케이션에 포함
      • 명령줄 인수로 전달
      • 설정 정보가 포함된 파일 포함
      • 시스템 환경변수로 전달
    • 명령줄 인자 전달
      • 도커에서는
      • ENTRYPOINT
        • shell 형식 : ENTRYPOINT node app.js
        • exec 형식 : [node] [app.js]
        • shell 형식으로 실행하면 shell이 먼저 실행되고 shell에서 어플리케이션을 실행
          • 쓸데없는 프로세스가 돌게 된다.
        • exec 형식으로 실행하면 바로 어플리케이션이 실행
      • CMD
        • args: [”arg1”, “arg2”, “arg3”]
    • 환경 변수로 전달
      • 컨테이너의 환경변수에 값을 넣고
      • 그 환경변수로 불러오는 방식
      • 컨테이너 레벨로 환경변수가 들어간다.
      env :
      	- name: VAR
      		value: "foo"
      	- name: second_var
      		value : "second foo"
      
      • yaml 파일에 하드코딩해야만 한다.
      • 또 이미지에 환경변수 값이 포함되게 되어 이미지가 공유되면 민감정보가 나갈 수 있다.
    • 컨피그맵
      • 설정옵션과 소스 코드를 분리할 수 있도록 하는 리소스
      • 키 값 쌍으로 이루어진 맵
      • 파드에 컨피그맵을 매핑 시켜서 환경 변수에 등록 시킬 수 있다.
      • prefix를 붙이면 모든 컨피그맵 key에 prefix가 붙는다.
        • 만약 키에 ‘ - ‘ 가 포함되어 있으면 prefix를 안붙임. ( 잘못된 규약이기 때문에)
    • 시크릿
      • 컨피그맵과 똑같음.
      • 다만 base64로 인코딩해서 보여줌
      • 자격증명이나 비밀번호 등을 저장하기에 용이

+ Recent posts