문서 메뉴
문서 홈
/ /
Atlas App Services
/

앱 환경 구성

이 페이지의 내용

  • 개요
  • 시작하기 전에
  • 절차

앱 환경은 개발 워크플로우를 구성하고 코드를 효과적으로 재사용할 수 있는 방법입니다. 앱 환경을 사용하여 여러 버전의 글로벌 구성 값을 정의한 다음 앱의 현재 환경을 변경하여 여러 버전 간에 전환할 수 있습니다.

앱 서비스는 각각 개발 워크플로의 단계를 나타내는 내장 환경 이름 집합을 지원합니다.

  • ""

  • "development"

  • "testing"

  • "qa"

  • "production"

각 환경에 대해 해당 환경이 활성화되어 있을 때 애플리케이션에서 사용할 수 있는 환경 값 집합을 정의할 수 있습니다.

예를 들어, 새 기능을 개발하고 있는지, 아니면 프로덕션에 배포하는지에 따라 API의 baseUrl 구성에 다른 값을 사용할 수 있습니다.

환경의 값은 단일 JSON 객체로 저장됩니다. 필드 이름과 해당 값을 원하는 대로 설정할 수 있습니다.

필드 이름으로 현재 환경의 값에 액세스할 수 있습니다.

환경 태그는 각각 개발 프로세스의 특정 단계를 나타냅니다. 각 환경에 대해 별도의 앱을 정의할 수 있으며, 각 앱은 동일한 구성 파일 세트를 사용하지만 고유한 환경 태그를 갖습니다. 방법을 알아보려면 앱 복사하기를 참조하세요.

예를 들어, 일반적인 개발 프로세스에는 development, testingproduction의 세 가지 개발 단계가 있을 수 있습니다. 각 단계마다 별도의 앱을 사용하고 각 앱마다 다른 환경 값을 사용할 수 있습니다.

고유한 애플리케이션을 사용하여 개별 기능 브랜치를 테스트할 수도 있습니다. 예를 들어 개발자가 기능 브랜치에 대해 포크하는 핵심 development 앱이 있을 수 있습니다. 기능 브랜치가 테스트로 이동하면 핵심 testing 앱을 대신 사용할 수 있습니다.

환경을 CI/CD 워크플로에 통합하는 방법을 알아보려면 CI/CD 파이프라인 설정 을 참조하세요. 실제 애플리케이션의 테스트, 배포 및 기타 작업을 관리하는 전체 예시는 GitHub 작업을 사용하여 App Services 앱용 CI/CD 파이프라인을 빌드하는 방법을 참조하세요.

각 브랜치에 대한 다양한 App Services 앱을 보여주는 다이어그램
클릭하여 확대

Atlas UI에서 앱 환경을 정의하려면 다음이 필요합니다.

  • 프로젝트 소유자 권한이 있는 MongoDB Atlas 계정입니다. 무료 계정을 등록하는 방법은 Atlas 시작하기를 참조하세요.

CLI에서 앱 환경을 정의하려면 다음이 필요합니다.

  • 프로젝트 소유자 권한이 있는 MongoDB Atlas 계정입니다. 무료 계정을 등록하는 방법은 Atlas 시작하기를 참조하세요.

  • MongoDB Atlas Admin API 공용/개인 키 쌍. API 키에는 App Services Admin API를 사용하려면 프로젝트 소유자 권한이 있어야 합니다.

  • 로컬 시스템 PATH에 설치되어 추가된 App Services CLI의 복사본입니다. 자세한 방법을 알아보려면 App Services CLI 설치를 참조하십시오.

  • 앱의 클라이언트 앱 ID입니다. 앱 이름을 포함하는 고유한 문자열(예: "myapp-abcde" 입니다. 앱 ID를 찾는 방법을 알아보려면 앱 메타데이터 가져오기를 참조하세요.

관리자 API로 앱 환경을 정의하려면 다음이 필요합니다.

1

App Services UI의 왼쪽 탐색 메뉴에서 Values 을 클릭한 다음 Create New Value 를 클릭합니다.

값의 이름을 입력하고 값 유형으로 Environment 을 선택합니다.

2

값에 액세스하려는 각 환경 태그의 값을 정의합니다. 각 환경에 대해 서로 다른 값을 정의할 수 있으며 모든 환경에서는 정의되지 않은 값을 남겨 둘 수 있습니다.

App Services UI의 환경 값 입력
3

앱은 항상 모든 환경 값의 값에 영향을 미치는 특정 환경에서 실행됩니다. Deploy > Environment 화면에서 앱의 현재 환경을 지정할 수 있습니다.

App Services UI의 환경 선택기
4

환경 값을 정의한 후 Save 를 클릭하여 구성을 업데이트합니다. 애플리케이션에 배포 초안이 활성화되어 있는 경우 Review & Deploy 를 클릭하여 변경 사항을 배포합니다.

1

MongoDB Atlas Admin API 키를 사용하여 CLI에 로그인합니다.

appservices login --api-key="<my api key>" --private-api-key="<my private api key>"
2

앱 구성 파일의 로컬 복사본을 가져옵니다. 최신 버전의 앱을 받으려면 다음 명령을 실행합니다.

appservices pull --remote="<Your App ID>"

UI에서 또는 Admin API를 사용하여 애플리케이션 구성 파일의 사본을 내보낼 수도 있습니다. 방법을 알아보려면 앱 내보내기를 참조하세요.

3

/environments 디렉토리에는 지원되는 각 환경 태그에 대한 .json 파일이 포함되어 있습니다. 각 파일은 해당 환경에 대한 모든 환경 값을 정의합니다.

Atlas App Services는 다음 환경 태그를 지원합니다.

  • ""

  • "development"

  • "testing"

  • "qa"

  • "production"

사용하려는 각 환경에 대한 파일을 엽니다. 각 파일에서 값의 이름을 해당 환경의 값에 매핑하는 항목을 values 하위 문서에 추가합니다.

예제

다음 구성은 productiondevelopment 환경에서 baseUrl 환경 값을 정의합니다.

/environments/production.json
{
"values": {
"baseUrl": "https://example.com"
}
}
/environments/development.json
{
"values": {
"baseUrl": "https://dev.example.com"
}
}
4

앱은 항상 모든 환경 값의 값에 영향을 미치는 특정 환경에서 실행됩니다. root_config.json 에서 앱의 현재 환경을 지정할 수 있습니다.

root_config.json
{
...,
"environment": "development"
}
5

각 환경에 대한 값을 정의한 후에는 업데이트된 구성을 원격 앱에 Atlas App Services CLI로 푸시할 수 있습니다. App Services CLI는 푸시 시 업데이트된 환경 값을 즉시 배포합니다.

appservices push --remote="<Your App ID>"
1

MongoDB Atlas API 키 쌍을 사용하여 관리자 사용자 인증 엔드포인트를 호출합니다.

curl -X POST \
https://services.cloud.mongodb.com/api/admin/v3.0/auth/providers/mongodb-cloud/login \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-d '{
"username": "<Public API Key>",
"apiKey": "<Private API Key>"
}'

인증이 성공하면 응답 본문에 access_token 값을 가진 JSON 객체가 포함됩니다.

{
"access_token": "<access_token>",
"refresh_token": "<refresh_token>",
"user_id": "<user_id>",
"device_id": "<device_id>"
}

access_token 은(는) Atlas App Services Admin API에 대한 액세스 권한을 부여합니다. 모든 관리자 API 요청에 대해 이를 Authorization 헤더에 베어러 토큰으로 포함해야 합니다.

다음도 참조하세요.

2

환경 값 생성 엔드포인트를 호출하여 앱의 환경 값을 정의할 수 있습니다. 각 환경 값에는 이름과 환경 태그를 환경의 값에 매핑하는 values 객체가 있습니다.

curl -X GET \
https://services.cloud.mongodb.com/api/admin/v3.0/groups/{groupId}/apps/{appId}/environment_values/{environmentValueId} \
-H 'Authorization: Bearer <access_token>' \
-d '{
"name": "myEnvironmentValue",
"values": {
"none": "alpha",
"development": "beta",
"testing": "gamma",
"qa": "delta",
"production": "epsilon"
}
}'
3

앱 환경 설정 엔드포인트를 호출하여 앱의 환경 태그를 설정할 수 있습니다.

curl -X PUT \
https://services.cloud.mongodb.com/api/admin/v3.0/groups/{groupId}/apps/{appId}/environment \
-H 'Authorization: Bearer <access_token>' \
-d '{ "environment": "production" }'

돌아가기

앱 내보내기

다음

GitHub를 통해 자동 배포하기

이 페이지의 내용