만들기
템플릿에서 프로젝트를 만들어요. 필요한 설정은 처음부터 들어 있어요.
$ npm create runlot my-app
설정 파일도, 연결 문자열도 손댈 게 없어요. 명령 세 줄이면 앱과 데이터베이스가 같이 살아납니다.
템플릿에서 프로젝트를 만들어요. 필요한 설정은 처음부터 들어 있어요.
$ npm create runlot my-app
한 번 배포하면 바로 접속 가능한 주소가 나와요. 서울에서 바로 응답해요.
$ runlot deploy
→ https://my-app--me.runlot.app
이 프로젝트만의 PostgreSQL이 생겨요. 코드와 터미널이 같은 데이터를 봐요.
$ runlot pg create
→ env.DB와 psql이 같은 데이터베이스를 봐요
데이터베이스를 따로 고르고, 붙이고, 지키는 일을 runlot이 대신해요.
Worker 안에서 SQL을 실행해요. 연결 문자열도, 커넥션 풀도 없어요.
wire.runlot.app:5433으로 마이그레이션 도구와 클라이언트를 그대로 써요.
요청이 없으면 멈추고, 다음 요청에 0.4초 안에 돌아와요.
한 시간마다 스냅샷을 암호화해서 서울 밖에도 보관해요.
비밀 값을 넣고, 풀 크기를 맞추고, 연결이 끊겼는지 확인하는 일이 사라져요. 배포된 코드 안에서 env.DB를 그대로 부르면 돼요.
import { sql } from "runlot";
export default {
async fetch(request, env) {
// 이 Worker만의 PostgreSQL이에요
const { rows } = await env.DB.query(
sql`SELECT id, name FROM users
WHERE active = ${true} LIMIT 10`
);
return Response.json({ users: rows });
},
};
네, 무료 티어는 카드 등록 없이 시작할 수 있고 매달 0원이에요. 프로젝트 3개, 프로젝트마다 DB 150 MB, 백업 7일 보관까지 포함돼요. 한도를 넘기면 요금이 자동으로 붙는 대신 알림을 먼저 보내 드려요.
접속돼요. wire.runlot.app:5433으로 붙으면 코드에서 쓰던 env.DB와 똑같은 데이터베이스를 봐요. psql은 물론 Prisma, Drizzle, TablePlus 같은 도구도 그대로 쓸 수 있어요.
한 시간마다 스냅샷을 자동으로 떠서 암호화한 뒤 서울 밖 저장소에도 함께 보관해요. 무료 티어는 7일치를 보관하고, 대시보드에서 원하는 시점으로 되돌릴 수 있어요.
지금은 서울 리전 한 곳에서 실행돼요. 앱과 데이터베이스가 같은 곳에 있어서 국내 사용자에게 응답이 빨라요. 다른 리전은 준비되는 대로 안내해 드릴게요.