Turso + Railway
Railway에 JavaScript/Rust 앱을 배포하면서 Turso Cloud의 임베디드 복제본(embedded replicas)을 함께 사용하는 방법을 안내해요. 임베디드 복제본을 쓰면 앱 프로세스 안에서 로컬 속도로 데이터베이스를 읽고 쓸 수 있답니다.
출처: 문서
본문
사전 준비
시작하기 전에 아래 항목을 준비해 주세요:
1. 데이터베이스 자격 증명 가져오기
계속 진행하려면 기존 데이터베이스가 필요해요. 아직 없다면 새로 만들어 보세요.
retrieve-database-credentials.mdx 스니펫을 참고해 자격 증명을 확인하세요.
이 값들은 환경 변수로 저장해 두는 것이 좋아요.
2. 애플리케이션 코드 받기
다음 임베디드 복제본 프로젝트를 GitHub에서 포크하고 로컬로 클론해 주세요:
- My Expenses Tracker - (Elysia + Bun) — 전체 소스 코드를 볼 수 있어요.
- Web Traffic API - (Rust) — 전체 소스 코드를 볼 수 있어요.
3. 새 Railway 프로젝트 만들기
다음 명령으로 새 Railway 프로젝트를 만들어요. 프롬프트가 뜨면 프로젝트 이름을 입력하면 돼요.
railway init
4. Railway 프로젝트에 서비스 추가하기
Railway 프로젝트에서 새 빈 서비스를 만들어 앱의 배포 대상으로 사용해요.
5. 애플리케이션을 서비스에 연결하기
다음 명령으로 서비스 목록을 확인하고, 애플리케이션에 연결할 서비스를 선택해요:
railway service
6. 데이터베이스 자격 증명 추가하기
Railway 대시보드에서 서비스를 열고 Turso Cloud 데이터베이스 자격 증명을 추가해요.
TURSO_DATABASE_URL=libsql://[db-name]-[github-username].turso.io
TURSO_AUTH_TOKEN=...
LOCAL_DB=file:local-db-name.db
7. 배포하기
다음 명령으로 애플리케이션을 배포해요:
railway up
애플리케이션을 인터넷에 노출해야 공용 네트워크에서 접근할 수 있으니 잊지 마세요.
무료 플랜을 사용 중이라면 코드 배포 기능을 쓰기 위해 Railway 계정을 GitHub에 연결해야 해요.