컨텐츠로 건너뛰기

Astro 사이트를 Google Cloud에 배포

Google Cloud는 Astro 사이트를 배포하는 데 사용할 수 있는 모든 기능을 갖춘 웹 앱 호스팅 플랫폼입니다.

  1. 새 GCP 프로젝트를 생성하거나 이미 가지고 있는 프로젝트를 선택하세요.

  2. Cloud Storage에서 새 버킷을 생성합니다.

  3. 이름과 기타 필수 설정을 지정합니다.

  4. dist 폴더를 여기에 업로드하거나 Cloud Build를 사용하여 업로드하세요.

  5. allUsersStorage Object Viewer라는 새 권한을 추가하여 공개 액세스를 활성화합니다.

  6. 웹사이트 구성을 편집하여 index.html을 엔트리포인트로 추가하고 404.html을 오류 페이지로 추가합니다.

Cloud Run은 인프라를 관리할 필요 없이 컨테이너를 실행할 수 있는 서버리스 플랫폼입니다. 정적 사이트와 SSR 사이트를 모두 배포하는 데 사용할 수 있습니다.

  1. 새 GCP 프로젝트를 생성하거나 이미 가지고 있는 프로젝트를 선택하세요.

  2. Cloud Run API가 활성화되어 있는지 확인하세요.

  3. 새로운 서비스를 생성합니다.

Dockerfile 생성 및 컨테이너 빌드

섹션 제목: Dockerfile 생성 및 컨테이너 빌드

Astro 사이트를 Cloud Run에 배포하려면 먼저 컨테이너를 빌드하는 데 사용할 Dockerfile을 만들어야 합니다. 레시피 섹션에서 Astro와 함께 Docker를 사용하는 방법에 대한 자세한 내용을 찾아보세요.

Dockerfile이 생성되면 이미지로 빌드하고 Google Cloud에 푸시합니다. 이를 수행하는 몇 가지 방법이 있습니다:

Docker를 사용하여 로컬로 빌드:

이미지를 빌드하려면 docker build 명령을 사용하고, 이미지에 태그를 지정하려면 docker tag를 사용하고, 레지스트리에 푸시하려면 docker push를 사용하세요. Google Cloud의 경우 Artifact Registry가 가장 쉬운 옵션이지만 Docker 허브를 사용할 수도 있습니다.

Terminal window
# 컨테이너 빌드
docker build .
docker tag SOURCE_IMAGE HOSTNAME/PROJECT-ID/TARGET-IMAGE:TAG
# 이미지를 레지스트리로 푸시
docker push HOSTNAME/PROJECT-ID/IMAGE:TAG

프로젝트에 맞게 위 명령에서 다음 값을 변경합니다.

  • SOURCE_IMAGE: 로컬 이미지 이름 또는 이미지 ID입니다.
  • HOSTNAME: 레지스트리 호스트 (gcr.io, eu.gcr.io, asia.gcr.io, us.gcr.io).
  • PROJECT: Google Cloud 프로젝트 ID입니다.
  • TARGET-IMAGE: 레지스트리에 저장될 때 이미지의 이름입니다.
  • TAG는 이미지와 관련된 버전입니다.

Google Cloud 문서에서 자세히 알아보세요.

다른 도구 사용:

GitHub Actions와 같이 Docker를 지원하는 CI/CD 도구를 사용할 수 있습니다.

Cloud Build를 사용하여 빌드:

Dockerfile을 로컬로 빌드하는 대신 Google Cloud에 원격으로 이미지를 빌드하도록 지시할 수 있습니다. 여기에서 Google Cloud Build 문서를 참조하세요.

배포는 using gcloud하여 터미널에서 수동으로 처리하거나 Cloud Build 또는 기타 CI/CD 시스템을 사용하여 자동으로 처리할 수 있습니다.

더 많은 배포 안내서