배포 환경별로 시크릿을 저장하고 관리할 수 있습니다. 배포 설정 시 저장된 시크릿을 불러와 환경변수로 쉽게 적용할 수 있습니다.

시크릿 저장

배포환경 설정화면의 시크릿 항목에서 ENV파일을 Drag & Drop하거나, 아이콘을 클릭해 여러 개의 환경변수를 직접 입력할 수 있습니다.

ENV파일에서 환경변수 이름과 값이 등호(=) 로 구분된 내용이 입력되며, 확장자 이름과 상관없이 적용 가능합니다.

배포 과정에서 적용

배포창의 Environment variables 항목에서 ENV파일을 Drag & Drop하거나, 아이콘을 클릭해 여러 개의 환경변수를 직접 입력할 수 있으며, 를 클릭하면 미리 저장한 시크릿을 불러올 수 있습니다.

시크릿은 배포환경 단위로 저장됩니다. 시크릿이 조회되지 않는 경우, 서비스가 위치한 배포환경을 확인해보세요.

배포 후 관리

서비스 설정화면의 배포 설정 항목에서 환경변수를 수정 또는 추가할 수 있으며, 배포하기를 클릭하면 수정된 환경 변수를 적용한 배포과정이 진행됩니다.

Yaml 설정에서 사용

대시보드가 아닌 CLI 혹은 CI 도구에서 서비스를 배포하는 데에 활용되는 yaml 예시입니다. 아래 코드와 같이 secret(시크릿) 속성을 사용합니다.

name: flask
app: python@3.9
options:
  env:
    - name: FLASK_ENV
      secret: flask-env
    - name: DB_PASSWORD
      secret: mariadb-root-password
  ports: 5000
  start: gunicorn -b 0.0.0.0:5000 app:app
context:
  git:
    url: https://github.com/cloudtype-examples/flask.git
    branch: main
  preset: python-flask

만약 미리 저장한 환경변수 값이 아니라 배포시점에 직접 환경변수 값을 입력하는 경우, value 속성에 값을 작성해주어야 합니다.

name: flask
app: python@3.9
options:
  env:
    - name: FLASK_ENV
      value: production
  ports: 5000
  start: gunicorn -b 0.0.0.0:5000 app:app
context:
  git:
    url: https://github.com/cloudtype-examples/flask.git
    branch: main
  preset: python-flask