Firebase App Hosting는 프레임워크 중심의 최신 웹 앱 개발을 지원하도록 설계되었습니다. 이 페이지를 App Hosting가 직접 지원하는 도구 및 프레임워크에 관한 참조로 사용하고 관련 프레임워크 및 도구에 대해 알아보는 출발점으로 사용하세요.
웹 프레임워크 및 App Hosting
App Hosting는 최신 웹 프레임워크에 대해 사전 구성된 빌드 및 배포 지원과 출력 번들 사양을 준수하는 오픈소스 참여를 통한 커뮤니티 수준 지원이라는 두 가지 광범위한 지원 수준을 제공합니다. 두 경우 모두 프레임워크 어댑터 구성요소를 사용하면 특정 프레임워크를 App Hosting와 통합할 수 있습니다.
사전 구성된 빌드 및 배포 지원이 포함된 프레임워크
사전 구성된 빌드 및 배포 지원을 통해 Firebase는 package-lock.json
파일 또는 기타 잠금 파일을 검사하여 사용 중인 프레임워크를 식별하고 앱의 빌드 및 배포 프로세스를 최적화합니다. Google은 이러한 프레임워크에 대한 지원을 유지하기 위해 최선을 다하고 있으며 Firebase 지원팀에서 문제 신고 및 기능 요청을 수락할 수 있습니다.
이 수준의 지원은 다음에 제공됩니다.
- Next.js
- Angular
특정 버전 및 지원 수준에 관한 자세한 내용은 지원 일정을 참고하세요.
잠금 파일이 없는 Node.js 앱을 배포하려고 하면 App Hosting에서 앱을 빌드하고 실행하지 못합니다. 루트 디렉터리에서 npm install
를 실행하여 package-lock.json
를 만들 수 있습니다.
커뮤니티 지원 프레임워크
App Hosting는 Next.js 및 Angular 외에도 출력 번들 사양과 일치하는 빌드 출력을 제공할 수 있는 모든 웹 프레임워크도 지원합니다. 프레임워크 작성자는 출력 번들 사양을 활용하여 프레임워크가 App Hosting에서 지원되도록 할 수 있습니다. 예를 들어 널리 사용되는 Nuxt 프레임워크는 App Hosting에서 Nuxt 앱 배포를 사용 설정하기 위해 Firebase 어댑터를 빌드한 Nitro팀에서 지원합니다.
App Hosting에서 지원하는 프레임워크를 추가로 확인하려면 프레임워크 어댑터를 만들거나 프레임워크의 유지관리자에게 문의하여 빌드 출력을 App Hosting 형식으로 변환하면 됩니다. Next.js 및 Angular 어댑터는 어댑터를 만드는 모든 사용자에게 좋은 참조 예시입니다.
커뮤니티 지원 프레임워크에 관한 정보는 Firebase 오픈소스에서 확인할 수 있습니다. 커뮤니티 지원 프레임워크의 문제 및 기능 요청은 오픈소스 커뮤니티 또는 프레임워크 작성자에게 전달해야 합니다. 경우에 따라 Google에서 지원을 제공할 수 있지만 커뮤니티가 이러한 어댑터의 일차적인 지원을 제공합니다.
App Hosting 프레임워크 어댑터
App Hosting에서는 사전 구성된 프레임워크와 커뮤니티 지원 프레임워크 모두에 대한 지원이 프레임워크 어댑터를 통해 제공됩니다. App Hosting 프레임워크 어댑터에는 두 가지 주요 역할이 있습니다.
- 소스 코드와 프레임워크별 구성 파일 (예:
next.config.js
)을 파싱하고 나머지 App Hosting 인프라에서 처리할 수 있는 출력 번들을 생성합니다. - 앱의 빌드 명령어를 실행하여 정적 애셋을 생성하고 프로덕션용으로 최적화된 앱 버전을 만듭니다.
프레임워크 어댑터는 npm run build
로 Node.js 앱을 빌드하며 각 프레임워크의 기본 빌드 스크립트(Next.js의 경우 next build
, Angular의 경우 ng build
)와 가장 잘 작동합니다. App Hosting는 맞춤 빌드 명령어로 빌드를 시도하지만 성공을 확실하게 보장할 수는 없습니다. apphosting.yaml
에서 빌드 및 실행 스크립트를 재정의할 수 있습니다.
Next.js 및 Angular 어댑터의 소스는 firebase-framework-tools에서 사용할 수 있습니다.
App Hosting의 런타임
App Hosting에서 빌드하고 출시한 후 Node.js 앱은 Cloud Run 버전으로 실행됩니다. 따라서 앱의 런타임 버전은 Cloud Run의 지원 범위와 선택한 웹 프레임워크의 범위 내에 있어야 합니다. Angular 및 Next.js에 대해 사전 구성된 지원의 경우 다음 Node.js 버전이 지원됩니다.
- Next.js 13.5.x 이상
- Angular 18.2.x 이상
- Node.js 18 이상
App Hosting는 새로 출시된 프레임워크 버전을 자동으로 지원하지 않습니다. 현재 지정된 '활성' 버전보다 최신 버전은 App Hosting에서 공식적으로 '활성'으로 표시될 때까지 '미리보기' 상태로 간주됩니다.
App Hosting는 해당 부 버전 내에서 최신 패치 버전으로 지속적으로 업데이트하는 경우 활성 지원 기간부터 1년 동안 주 버전의 최신 부 버전에 대한 장기 지원 (LTS)을 지원합니다. Next.js 및 Angular에 관한 자세한 내용은 다음 표를 참고하세요.
Next.js 지원 일정
버전 | 상태 | 지원 중단 |
---|---|---|
13.5.x | lts | 2026-10-9 |
14.2.x | lts | 2026-10-9 |
15.0.x | 활성 | 2025-10-9 이전 |
15.1.x | 활성 | 2025-10-9 이전 |
15.2.x | 활성 | - |
Angular 지원 일정
버전 | 상태 | 지원 중단 |
---|---|---|
18.2.x | lts | 2026-10-9 |
19.0.x | 활성 | 2025-10-9 이전 |
19.1.x | 활성 | 2025-10-9 이전 |
19.2.x | 활성 | - |
패키지 관리자
App Hosting는 Cloud Native Buildpack을 사용하여 종속 항목 설치를 실행하고 npm, yarn 또는 pnpm을 사용하여 앱을 빌드합니다. JSR과 같은 다른 패키지 관리자는 지원되지 않습니다.
NPM
- NPM은 기본 패키지 관리자입니다.
- 프로덕션 외 종속 항목은 빌드가 완료된 후에 제거됩니다.
package.json
파일의engines.npm
필드를 사용하여 npm 버전 섹션을 지정할 수 있습니다.
Yarn
- 대신 프로젝트에
yarn.lock
파일을 포함할 때 Yarn을 사용합니다. package.json
파일의engines.yarn
또는packageManager
필드에 사용할 Yarn 버전을 지정할 수 있습니다.- App Hosting는 Yarn2 PnP 모드를 지원합니다.
Pnpm
- 프로젝트에
pnpm-lock.yaml
파일을 포함하면 Pnpm이 대신 사용됩니다. package.json
파일의engines.pnpm
또는packageManager
필드에 Pnpm 버전을 지정할 수 있습니다.- 작동하는 예시는 sample-node-pnpm을 참고하세요. 앱을 엽니다.
App Hosting용 모노레포
App Hosting는 Nx 기반 앱을 지원합니다. 자세한 안내는 App Hosting로 모노레포 사용을 참고하세요.
다음 Nx 버전이 지원됩니다.
버전 | 상태 | 지원 중단 |
---|---|---|
19.5.x | 유지 보수 | 2025-10-9 |
19.6.x | 유지 보수 | 2025-10-9 |
19.7.x | 유지 보수 | 2025-10-9 |
19.8.x | lts | 2026-10-9 |
20.0.x | 활성 | 2025-10-9 이전 |
20.1.x | 활성 | 2025-10-9 이전 |
20.2.x | 활성 | 2025-10-9 이전 |
20.3.x | 활성 | 2025-10-9 이전 |
20.4.x | 활성 | 2025-10-9 이전 |
20.5.x | 활성 | 2025-10-9 이전 |
20.6.x | 활성 | 2025-10-9 이전 |
20.7.x | 활성 | — |
다른 유형의 모노레포 워크스페이스에 대한 지원이 필요한 경우 Firebase UserVoice에서 알려주세요.