컨테이너 인스턴스에서 환경 변수 설정
컨테이너 인스턴스에서 환경 변수를 설정하면 컨테이너가 실행하는 애플리케이션 또는 스크립트의 동적 구성을 제공할 수 있습니다. 관련 환경 변수를 설정하는 것은 --env
명령줄 인수를 docker run
으로 설정하는 것과 비슷합니다.
환경 변수로 비밀을 전달해야 하는 경우 Azure Container Instances는 Windows와 Linux 컨테이너 모두에 사용 가능한 보안 값을 지원합니다.
다음 예제에서는 두 변수가 생성될 때 컨테이너로 전달됩니다. 예제에서는 Bash Shell 또는 Cloud Shell에서 CLI를 실행하는 것으로 가정합니다. Windows 명령 프롬프트를 사용하는 경우 --environment-variables "NumWords"="5" "MinLength"="8"
처럼 큰따옴표를 사용하여 변수를 지정합니다.
az container create \
--resource-group myResourceGroup \
--name mycontainer2 \
--image mcr.microsoft.com/azuredocs/aci-wordcount:latest
--restart-policy OnFailure \
--environment-variables 'NumWords'='5' 'MinLength'='8'\
보안 값
보안 값이 있는 개체는 애플리케이션에 대한 암호 또는 키와 같은 중요한 정보를 저장하는 데 사용됩니다. 환경 변수에 대한 보안 값을 사용하면 컨테이너의 이미지에 포함하는 것보다 더 안전하고 더 유연적입니다.
안전한 값을 사용하는 환경 변수는 컨테이너의 속성에 표시되지 않습니다. 환경 변수의 값은 컨테이너 내에서만 액세스할 수 있습니다. 예를 들어 Azure Portal 또는 Azure CLI에서 본 컨테이너 속성은 보안 변수의 이름만 표시하고 값을 표시하지 않습니다.
변수의 유형에 대한 일반 value
대신 secureValue
속성을 지정하여 보안 환경 변수를 설정합니다. 다음 YAML에서 정의된 두 개의 변수는 두 가지의 변수 유형을 설명합니다.
apiVersion: 2018-10-01
location: eastus
name: securetest
properties:
containers:
- name: mycontainer
properties:
environmentVariables:
- name: 'NOTSECRET'
value: 'my-exposed-value'
- name: 'SECRET'
secureValue: 'my-secret-value'
image: nginx
ports: []
resources:
requests:
cpu: 1.0
memoryInGB: 1.5
osType: Linux
restartPolicy: Always
tags: null
type: Microsoft.ContainerInstance/containerGroups
다음 명령을 실행하여 YAML로 컨테이너 그룹을 배포합니다.
az container create --resource-group myResourceGroup \
--file secure-env.yaml \