Railway 는 인프라를 프로비저닝하고 로컬에서 개발한 후 클라우드에 배포할 수 있는 인프라 플랫폼입니다. 제로 구성 자동 SSL 및 내장 데이터베이스 프로비저닝을 통해 GitHub 에서 즉시 배포할 수 있습니다.
이 가이드에서는 Bun 애플리케이션을 PostgreSQL 데이터베이스 (선택사항) 와 함께 배포하는 방법을 설명합니다. 이는 아래 템플릿에서 제공하는 것과 정확히 동일합니다.
이 가이드를 단계별로 따르거나 사전 구성된 템플릿을 한 번의 클릭으로 배포할 수 있습니다:
사전 요구사항:
- 배포할 준비가 된 Bun 애플리케이션
- Railway 계정
- Railway CLI(CLI 배포 방법용)
- GitHub 계정 (대시보드 배포 방법용)
방법 1: CLI 를 통한 배포
1 단계
Railway CLI 가 설치되어 있는지 확인합니다.
bun install -g @railway/cli2 단계
Railway 계정에 로그인합니다.
railway login3 단계
성공적으로 인증되면 새 프로젝트를 초기화합니다.
railway init4 단계
프로젝트를 초기화한 후 새 데이터베이스와 서비스를 추가합니다.
NOTE
4 단계는 애플리케이션이 데이터베이스를 사용하는 경우에만 필요합니다. PostgreSQL 이 필요하지 않은 경우 5 단계로 건너뜁니다.# PostgreSQL 데이터베이스 추가. 먼저 추가하세요!
railway add --database postgres
# 애플리케이션 서비스 추가.
railway add --service bun-react-db --variables DATABASE_URL=\${{Postgres.DATABASE_URL}}5 단계
서비스가 생성되고 연결되면 애플리케이션을 Railway 에 배포합니다. 기본적으로 서비스는 Railway 의 프라이빗 네트워크 내에서만 액세스할 수 있습니다. 앱을 공개적으로 액세스할 수 있게 하려면 공개 도메인을 생성해야 합니다.
# 애플리케이션 배포
railway up
# 공개 도메인 생성
railway domain앱이 이제 실행되었습니다! Railway 는 모든 GitHub 푸시 시 자동 배포합니다.
방법 2: 대시보드를 통한 배포
1 단계
새 프로젝트 생성
- Railway Dashboard 로 이동합니다
- "+ New" → "GitHub repo" 를 클릭합니다
- 저장소를 선택합니다
2 단계
PostgreSQL 데이터베이스를 추가하고 이 데이터베이스를 서비스에 연결합니다
NOTE
2 단계는 애플리케이션이 데이터베이스를 사용하는 경우에만 필요합니다. PostgreSQL 이 필요하지 않은 경우 3 단계로 건너뜁니다.- "+ New" → "Database" → "Add PostgreSQL" 을 클릭합니다
- 데이터베이스가 생성되면 서비스 (데이터베이스 아님) 를 선택합니다
- "Variables" 탭으로 이동합니다
- "+ New Variable" → "Add Reference" 를 클릭합니다
- postgres 에서
DATABASE_URL를 선택합니다
3 단계
공개 도메인 생성
- 서비스를 선택합니다
- "Settings" 탭으로 이동합니다
- "Networking" 에서 "Generate Domain" 을 클릭합니다
앱이 이제 실행되었습니다! Railway 는 모든 GitHub 푸시 시 자동 배포합니다.
구성 (선택사항)
기본적으로 Railway 는 Nixpacks 를 사용하여 제로 구성으로 Bun 애플리케이션을 자동으로 감지하고 빌드합니다.
그러나 Railpack 애플리케이션 빌더를 사용하면 더 나은 Bun 지원을 제공하며 항상 최신 버전의 Bun 을 지원합니다. 사전 구성된 템플릿은 기본적으로 Railpack 을 사용합니다.
사용자 지정 프로젝트에서 Railpack 을 활성화하려면 railway.json 에 다음을 추가합니다:
{
"$schema": "https://railway.com/railway.schema.json",
"build": {
"builder": "RAILPACK"
}
}빌드 구성 설정에 대한 자세한 내용은 Railway 문서 를 확인하세요.