Skip to content

Latest commit

 

History

History
112 lines (79 loc) · 4.12 KB

space.mdx

File metadata and controls

112 lines (79 loc) · 4.12 KB
title description type i18nReady
Astro 사이트를 Space에 배포하세요
Space에 Astro 사이트를 구축하는 방법.
deploy
true

import InstallGuideTabGroup from '/components/TabGroup/InstallGuideTabGroup.astro'; import PackageManagerTabs from '/components/tabs/PackageManagerTabs.astro'; import { Steps } from '@astrojs/starlight/components';

Deta Space는 클라우드, 즉 '개인용 클라우드'에 존재하는 개인용 컴퓨터입니다. 나만의 "Space"에서 직접 앱을 만들고 실행할 수 있습니다. 자신이 만든 앱을 게시하면 전 세계 사람들을 위해 실행될 수 있습니다.

이 안내서에는 Space에서 사이트를 구축하기 위한 단계별 지침이 포함되어 있습니다. 정적 및 (@astrojs/node 어댑터를 사용하여) 서버 측 렌더링된 Astro 사이트가 모두 지원됩니다.

:::note Space는 현재 Node.js 16만 지원하므로 다음 지침은 v3.0+ Astro 프로젝트에는 작동하지 않습니다. :::

전제 조건

Astro 사이트를 Space로 푸시하려면 먼저 다음을 확인하세요.

Astro 프로젝트 디렉터리 내부에 Space 프로젝트를 만듭니다. CLI를 실행하고 화면의 지시를 따릅니다.

space new

:::note Space CLI는 앱 구성을 자동 감지하려고 시도합니다. 제안된 구성을 수락한 다음 배포하려는 Astro 앱 유형에 따라 아래 지침을 따르세요. :::

프로젝트 구성

정적 사이트

Space CLI에서 생성된 프로젝트 루트의 Spacefile 파일을 다음과 같이 변경합니다.

1. engine을 `static`으로 변경합니다.
  1. commands 목록에 Astro의 빌드 명령을 추가합니다.

  2. Astro가 생성한 dist 디렉터리를 제공합니다.

# Spacefile 문서: https://deta.space/docs/en/build/reference/spacefile
v: 0
micros:
  - name: static-astro-in-space
    src: .
    engine: static
    commands:
      - npm run build
    serve: dist

서버 측 렌더링 사이트

Space CLI에서 생성된 프로젝트 루트의 Spacefile 파일을 다음과 같이 변경합니다.

1. `nodejs16` 엔진을 구성합니다.
  1. build 명령을 추가합니다.

  2. Astro에서 생성된 dist 디렉터리를 포함합니다.

  3. node 명령을 실행합니다.

# Spacefile 문서: https://deta.space/docs/en/build/reference/spacefile
v: 0
micros:
  - name: ssr-astro-in-space
    src: .
    engine: nodejs16
    commands:
      - npm run build
    include:
      - dist
    run: "node ./dist/server/entry.mjs"

배포 방법

다음 명령어를 사용하여 프로젝트를 배포합니다.

space push

그러면 빌드 프로세스가 실행되어 Astro 앱에 액세스할 수 있는 새로운 Space 앱 인스턴스가 생성됩니다.

기본적으로 Space 앱은 비공개이며 나만 액세스할 수 있습니다.

다른 사람이 앱을 사용할 수 있도록 하기위해 Public Routes를 사용하여 앱의 일부를 공개할 수 있습니다. 또는 릴리스를 생성하여 다른 사람들이 자신의 개인 클라우드에 앱을 설치하도록 할 수 있습니다.

다음 단계

예시