diff --git a/src/content/docs/ko/guides/deploy/deno.mdx b/src/content/docs/ko/guides/deploy/deno.mdx index 30b9fd3563982..c8385eb9136a4 100644 --- a/src/content/docs/ko/guides/deploy/deno.mdx +++ b/src/content/docs/ko/guides/deploy/deno.mdx @@ -8,10 +8,11 @@ i18nReady: true --- import { Steps } from '@astrojs/starlight/components'; import StaticSsrTabs from '~/components/tabs/StaticSsrTabs.astro'; +import PackageManagerTabs from '~/components/tabs/PackageManagerTabs.astro' -전 세계 엣지에서 JavaScript, TypeScript 및 WebAssembly를 실행하는 분산 시스템인 [Deno Deploy](https://deno.com/deploy)에 서버 측 렌더링된 Astro 사이트를 배포할 수 있습니다. +Deno를 사용하여 자체 서버 또는 전 세계 엣지에서 JavaScript, TypeScript 및 WebAssembly를 실행하는 분산 시스템인 [Deno Deploy](https://deno.com/deploy)에 정적 또는 요청 시 렌더링되는 Astro 사이트를 배포할 수 있습니다. -이 안내서에는 GitHub Actions 또는 Deno Deploy의 CLI를 통해 Deno Deploy에 배포하기 위한 지침이 포함되어 있습니다. +이 가이드에는 Deno를 사용하여 자체 서버에서 Astro 사이트를 실행하고 GitHub Actions 또는 Deno Deploy CLI를 통해 Deno Deploy에 배포하는 방법에 대한 지침이 포함되어 있습니다. ## 요구 사항 @@ -19,30 +20,36 @@ import StaticSsrTabs from '~/components/tabs/StaticSsrTabs.astro'; ## 프로젝트 구성 -[Deno Deploy](https://deno.com/deploy)에 Astro 프로젝트를 정적 사이트 또는 서버 측 렌더링 사이트 (SSR)로 배포할 수 있습니다. +Astro 프로젝트는 정적 사이트 또는 요청 시 렌더링되는 사이트로 배포될 수 있습니다. ### 정적 사이트 -Astro 프로젝트는 기본적으로 정적 사이트입니다. 정적 Astro 사이트를 Deno Deploy에 배포하기 위해 추가 구성이 필요하지 않습니다. +기본적으로 Astro 프로젝트는 정적 사이트입니다. Deno 또는 Deno Deploy를 사용하여 정적 Astro 사이트를 배포하는 데 추가 구성이 필요하지 않습니다. -### SSR용 어댑터 +### 요청 시 렌더링을 위한 어댑터 -Astro 프로젝트에서 SSR을 활성화하고 Deno Deploy에 배포하려면: - -`astro add` 명령을 사용하여 Astro 프로젝트에서 SSR을 활성화하려면 [Deno 어댑터][Deno adapter]를 추가하세요. 그러면 어댑터가 설치되고 `astro.config.mjs` 파일이 한 번에 적절하게 변경됩니다. - -```bash -npx astro add deno -``` - -대신 어댑터를 수동으로 설치하려면 다음 두 단계를 완료하세요. +Deno를 사용하여 Astro 프로젝트에서 요청 시 렌더링을 활성화하고 Deno Deploy에 배포하려면 다음을 수행하세요. -1. 선호하는 패키지 관리자를 사용하여 프로젝트의 종속성에 [`@deno/astro-adapter` 어댑터][Deno adapter]를 설치합니다. npm을 사용 중이거나 확실하지 않은 경우 터미널에서 다음을 실행하세요. - - ```bash - npm install @deno/astro-adapter - ``` +1. 선호하는 패키지 관리자를 사용하여 프로젝트의 종속성에 [`@deno/astro-adapter` 어댑터][Deno adapter]를 설치합니다. + + + + ```shell + npm install @deno/astro-adapter + ``` + + + ```shell + pnpm install @deno/astro-adapter + ``` + + + ```shell + yarn add @deno/astro-adapter + ``` + + 2. `astro.config.mjs` 프로젝트 구성 파일을 아래 변경 사항으로 업데이트하세요. @@ -57,7 +64,7 @@ npx astro add deno }); ``` - 다음으로 `package.json` 파일의 `preview` 스크립트를 아래 변경 사항으로 업데이트하세요. +3. `package.json` 파일의 `preview` 스크립트를 아래 변경 사항으로 업데이트하세요. ```json del={8} ins={9} // package.json @@ -75,14 +82,90 @@ npx astro add deno 이제 이 명령을 사용하여 Deno를 통해 로컬에서 프로덕션 Astro 사이트를 미리 볼 수 있습니다. - ```bash - npm run preview - ``` + + + ```shell + npm run preview + ``` + + + ```shell + pnpm run preview + ``` + + + ```shell + yarn run preview + ``` + + ## 배포하는 방법 -GitHub Actions 또는 Deno Deploy의 CLI (명령줄 인터페이스)를 사용하여 Deno Deploy에 배포할 수 있습니다. +자체 서버에서 Astro 사이트를 실행하거나 GitHub Actions 또는 Deno Deploy의 CLI (명령줄 인터페이스)를 사용하여 Deno Deploy에 배포할 수 있습니다. + +### 자체 서버에 배포 + + +1. 서버에 프로젝트를 복사합니다. + +2. 선호하는 패키지 관리자를 사용하여 프로젝트 의존성을 설치합니다. + + + + ```shell + npm install + ``` + + + ```shell + pnpm install + ``` + + + ```shell + yarn + ``` + + + +3. 선호하는 패키지 관리자를 사용하여 Astro 사이트를 빌드합니다. + + + + ```shell + npm run build + ``` + + + ```shell + pnpm run build + ``` + + + ```shell + yarn run build + ``` + + + +4. 다음 명령으로 애플리케이션을 시작합니다. + + + + ```bash + deno run -A jsr:@std/http/file-server dist + ``` + + + + ```bash + deno run -A ./dist/server/entry.mjs + ``` + + + ### GitHub Actions 배포 @@ -167,8 +250,7 @@ GitHub Actions 또는 Deno Deploy의 CLI (명령줄 인터페이스)를 사용 uses: denoland/deployctl@v1 with: project: my-deno-project # TODO: Deno Deploy 프로젝트 이름으로 변경 - entrypoint: server/entry.mjs - root: dist + entrypoint: dist/server/entry.mjs ``` @@ -187,26 +269,38 @@ GitHub Actions 또는 Deno Deploy의 CLI (명령줄 인터페이스)를 사용 deno install -gArf jsr:@deno/deployctl ``` -2. Astro 빌드 단계를 실행합니다. - - ```bash - npm run build - ``` +2. 선호하는 패키지 관리자를 사용하여 Astro 사이트를 빌드합니다. + + + + ```shell + npm run build + ``` + + + ```shell + pnpm run build + ``` + + + ```shell + yarn run build + ``` + + 3. 배포하려면 `deployctl`을 실행합니다! - 아래 명령에서 ``을 [Personal Access Token](https://dash.deno.com/account#access-tokens)으로 바꾸고 ``를 Deno Deploy 프로젝트 이름으로 바꿉니다. - ```bash - cd dist && DENO_DEPLOY_TOKEN= deployctl deploy --project= jsr:@std/http/file-server + cd dist && deployctl deploy jsr:@std/http/file-server ``` ```bash - DENO_DEPLOY_TOKEN= deployctl deploy --project= --no-static --include=./dist ./dist/server/entry.mjs + deployctl deploy ./dist/server/entry.mjs ``` @@ -226,7 +320,7 @@ GitHub Actions 또는 Deno Deploy의 CLI (명령줄 인터페이스)를 사용 "start": "astro dev", "build": "astro build", "preview": "astro preview", - "deno-deploy": "npm run build && cd dist && deployctl deploy --project= jsr:@std/http/file-server" + "deno-deploy": "npm run build && cd dist && deployctl deploy jsr:@std/http/file-server" } } ``` @@ -241,7 +335,7 @@ GitHub Actions 또는 Deno Deploy의 CLI (명령줄 인터페이스)를 사용 "start": "astro dev", "build": "astro build", "preview": "deno run --allow-net --allow-read --allow-env ./dist/server/entry.mjs", - "deno-deploy": "npm run build && deployctl deploy --project= --no-static --include=./dist ./dist/server/entry.mjs" + "deno-deploy": "npm run build && deployctl deploy ./dist/server/entry.mjs" } } ``` @@ -251,7 +345,7 @@ GitHub Actions 또는 Deno Deploy의 CLI (명령줄 인터페이스)를 사용 그런 다음 이 명령을 사용하여 Astro 사이트를 한 단계로 빌드하고 배포할 수 있습니다. ```bash - DENO_DEPLOY_TOKEN= npm run deno-deploy + npm run deno-deploy ```