다음을 통해 공유


init 명령

새 데이터 API 작성기 구성 파일을 초기화합니다. 결과 JSON은 데이터 원본 세부 정보, 사용하도록 설정된 엔드포인트(REST, GraphQL, MCP), 인증 및 런타임 동작을 캡처합니다.

Syntax

dab init [options]

대상 구성 파일이 이미 있는 경우 명령은 덮어씁니다. 병합이 없습니다. 이전 파일을 보존해야 하는 경우 버전 제어 또는 백업을 사용합니다.

한눈에 보기

Option 요약
-c, --config 출력 구성 파일 이름(기본 dab-config.json)

Authentication

Option 요약
--auth.audience JWT 대상 그룹 클레임
--auth.issuer JWT 발급자 클레임
--auth.provider ID 공급자(기본 StaticWebApps)

데이터 원본

Option 요약
--connection-string 데이터베이스 연결 문자열(지원)@env()
--cosmosdb_nosql-container Cosmos DB NoSQL 컨테이너 이름(선택 사항)
--cosmosdb_nosql-database Cosmos DB NoSQL 데이터베이스 이름(cosmosdb_nosql 필수)
--database-type 데이터베이스 형식: mssql, mysql, postgresql, cosmosdb_postgresqlcosmosdb_nosql
--set-session-context SQL Server 세션 컨텍스트 사용(mssql만 해당)

GraphQL

Option 요약
--graphql.disabled Deprecated. GraphQL을 사용하지 않도록 설정(사용 --graphql.enabled false)
--graphql.enabled GraphQL 사용(기본값 true)
--graphql.multiple-create.enabled 여러 변경 만들기 허용(기본값 false)
--graphql.path GraphQL 엔드포인트 접두사(기본 /graphql)
--graphql-schema GraphQL 스키마 경로(cosmosdb_nosql 필수)

호스트 및 인증

Option 요약
--host-mode 호스트 모드: 개발 또는 프로덕션(기본 프로덕션)
--cors-origin 허용된 원본 목록(쉼표로 구분)
--runtime.base-route 모든 엔드포인트에 대한 전역 접두사

MCP

Option 요약
--mcp.disabled Deprecated. MCP를 사용하지 않도록 설정(사용 --mcp.enabled false)
--mcp.enabled MCP 사용(기본값 true)
--mcp.path MCP 엔드포인트 접두사(기본 /mcp)

비고

MCP 기능은 버전 1.7의 일부가 됩니다.

REST

Option 요약
--rest.disabled Deprecated. REST를 사용하지 않도록 설정(사용 --rest.enabled false)
--rest.enabled REST 사용(기본값 true, 선호 --rest.disabled)
--rest.path REST 엔드포인트 접두사(기본 /api, cosmosdb_nosql 대해 무시됨)
--rest.request-body-strict 엄격한 요청 본문 유효성 검사 적용(기본값 true, cosmosdb_nosql 대해 무시됨)

중요합니다

동일한 명령에서 동일한 하위 시스템에 대한 새 --*.enabled 플래그와 레거시 --*.disabled 플래그를 혼합하지 마세요. 패턴, --*.enabled--rest.disabled--graphql.disabled--mcp.disabled 옵션 로그 경고를 선호하며 이후 버전에서 제거될 예정입니다.

-c, --config

출력 구성 파일 이름입니다. 기본값은 dab-config.json입니다.

Example

dab init --database-type mssql --config dab-config.local.json

결과 구성

{
  "data-source": {
    "database-type": "mssql",
    "connection-string": "@env('MSSQL_CONNECTION_STRING')"
  }
}

--auth.audience

JWT 대상 그룹 클레임입니다.

Example

dab init --database-type mssql --auth.audience "https://example.com/api"

결과 구성

{
  "runtime": {
    "authentication": {
      "audience": "https://example.com/api"
    }
  }
}

--auth.issuer

JWT 발급자 클레임입니다.

Example

dab init --database-type mssql --auth.issuer "https://login.microsoftonline.com/{tenant-id}/v2.0"

결과 구성

{
  "runtime": {
    "authentication": {
      "issuer": "https://login.microsoftonline.com/{tenant-id}/v2.0"
    }
  }
}

--auth.provider

ID 공급자입니다. 기본값은 StaticWebApps입니다.

Example

dab init --database-type mssql --auth.provider AzureAD

결과 구성

{
  "runtime": {
    "authentication": {
      "provider": "AzureAD"
    }
  }
}

--connection-string

데이터베이스 연결 문자열입니다. @env()지원합니다.

Example

dab init --database-type mssql --connection-string "@env('MSSQL_CONNECTION_STRING')"

결과 구성

{
  "data-source": {
    "connection-string": "@env('MSSQL_CONNECTION_STRING')"
  }
}

--cors-origin

허용된 원본의 쉼표로 구분된 목록입니다.

Example

dab init --database-type mssql --cors-origin "https://app.example.com,https://admin.example.com"

결과 구성

{
  "runtime": {
    "cors": {
      "origins": [ "https://app.example.com", "https://admin.example.com" ]
    }
  }
}

--cosmosdb_nosql-container

Cosmos DB NoSQL 컨테이너 이름입니다.

Example

dab init --database-type cosmosdb_nosql --cosmosdb_nosql-container MyContainer

결과 구성

{
  "data-source": {
    "database-type": "cosmosdb_nosql",
    "options": {
      "container": "MyContainer"
    }
  }
}

--cosmosdb_nosql-database

Cosmos DB NoSQL 데이터베이스 이름입니다. 에 필요합니다 cosmosdb_nosql.

Example

dab init --database-type cosmosdb_nosql --cosmosdb_nosql-database MyDb

결과 구성

{
  "data-source": {
    "database-type": "cosmosdb_nosql",
    "options": {
      "database": "MyDb"
    }
  }
}

--database-type

대상 데이터베이스 엔진을 지정합니다. 지원되는 값: mssql, mysql, postgresql, cosmosdb_postgresql, cosmosdb_nosql.

Example

dab init --database-type mssql

결과 구성

{
  "data-source": {
    "database-type": "mssql"
  }
}

--graphql.disabled

Deprecated. GraphQL을 사용하지 않도록 설정합니다. 를 선호합니다 --graphql.enabled false.

--graphql.enabled

GraphQL 엔드포인트를 사용하도록 설정합니다. 기본값은 true입니다.

Example

dab init --database-type mssql --graphql.enabled false

결과 구성

{
  "runtime": {
    "graphql": {
      "enabled": false
    }
  }
}

--graphql.multiple-create.enabled

단일 변형에서 여러 행을 만들 수 있습니다. 기본값은 false입니다.

Example

dab init --database-type mssql --graphql.multiple-create.enabled true

결과 구성

{
  "runtime": {
    "graphql": {
      "multiple-create": { "enabled": true }
    }
  }
}

--graphql.path

GraphQL 엔드포인트 접두사입니다. 기본값은 /graphql입니다.

Example

dab init --database-type mssql --graphql.path /gql

결과 구성

{
  "runtime": {
    "graphql": {
      "path": "/gql"
    }
  }
}

--graphql-schema

GraphQL 스키마 파일의 경로입니다. 에 필요합니다 cosmosdb_nosql.

Example

dab init --database-type cosmosdb_nosql --graphql-schema ./schema.gql

결과 구성

{
  "runtime": {
    "graphql": {
      "schema": "./schema.gql"
    }
  }
}

--host-mode

호스트 모드입니다. 기본값은 Production입니다.

유효한 값: Development, Production.

Example

dab init --database-type mssql --host-mode development

결과 구성

{
  "runtime": {
    "host": {
      "mode": "development"
    }
  }
}

--mcp.disabled

Deprecated. MCP를 사용하지 않도록 설정합니다. 를 선호합니다 --mcp.enabled false.

--mcp.enabled

MCP 엔드포인트를 사용하도록 설정합니다. 기본값은 true입니다.

Example

dab init --database-type mssql --mcp.enabled false

결과 구성

{
  "runtime": {
    "mcp": {
      "enabled": false
    }
  }
}

--mcp.path

MCP 엔드포인트 접두사입니다. 기본값은 /mcp입니다.

Example

dab init --database-type mssql --mcp.path /model

결과 구성

{
  "runtime": {
    "mcp": {
      "path": "/model"
    }
  }
}

--rest.disabled

Deprecated. REST를 사용하지 않도록 설정합니다. 를 선호합니다 --rest.enabled false.

--rest.enabled

REST 엔드포인트를 사용하도록 설정합니다. 기본값은 true입니다.

Example

dab init --database-type mssql --rest.enabled false

결과 구성

{
  "runtime": {
    "rest": {
      "enabled": false
    }
  }
}

--rest.path

REST 엔드포인트 접두사입니다. 기본값은 /api입니다.

비고

에 대해 cosmosdb_nosql무시됩니다.

Example

dab init --database-type mssql --rest.path /rest

결과 구성

{
  "runtime": {
    "rest": {
      "path": "/rest"
    }
  }
}

--rest.request-body-strict

요청 본문의 추가 필드 처리를 제어합니다. 기본값은 true입니다.

  • true: 불필요한 필드(HTTP 400)를 거부합니다.
  • false: 추가 필드를 무시합니다.

비고

에 대해 cosmosdb_nosql무시됩니다.

Example

dab init --database-type mssql --rest.request-body-strict false

결과 구성

{
  "runtime": {
    "rest": {
      "request-body-strict": false
    }
  }
}

--runtime.base-route

모든 엔드포인트 앞에 추가된 전역 접두사입니다. 으로 /시작해야 합니다.

Example

dab init --database-type mssql --runtime.base-route /v1

결과 구성

{
  "runtime": {
    "base-route": "/v1"
  }
}

--set-session-context

세션 컨텍스트를 사용하여 SQL Server로 데이터를 보낼 수 있습니다. 에만 유효합니다 mssql. 기본값은 false입니다.

Example

dab init --database-type mssql --set-session-context true

결과 구성

{
  "runtime": {
    "mssql": {
      "set-session-context": true
    }
  }
}