본문으로 건너뛰기
runlot

버전과 롤백

배포마다 버전 번호가 생성되고 이력은 유지됩니다. 명령 하나로 이전 버전으로 롤백할 수 있습니다.

배포할 때마다 프로젝트별 버전 번호가 1씩 증가합니다.

runlot versions
* v3  2026-09-05 14:02  my-app.me.runlot.app
  v2  2026-09-05 11:20
  v1  2026-09-04 22:41

*는 현재 서비스 중인 버전입니다. --json 옵션을 지정하면 서버 응답을 JSON 형식으로 받을 수 있습니다.

롤백하기

runlot rollback 2

롤백 전에 확인을 요청합니다.

This rolls me/my-app back to v2. The deploy being served will change. Continue?

CI 환경에서는 -y 옵션으로 확인 단계를 건너뛸 수 있습니다.

롤백은 선택한 버전을 다시 활성 버전으로 지정합니다. 번들을 다시 빌드하지 않고 기존 아티팩트를 사용하므로 새 배포보다 빠르게 완료됩니다.

버전에 남는 것

git 저장소에서 배포하면 CLI가 폴더의 git 상태를 읽어 함께 보냅니다. HEAD 커밋, 커밋 메시지 첫 줄, 브랜치, 그리고 커밋하지 않은 변경이 있었는지입니다. 대시보드의 배포 탭은 각 버전을 누가 올렸고 어느 커밋에서 왔는지 보여 주고, 커밋하지 않은 변경이 있는 상태로 올린 배포는 따로 표시합니다. 그런 배포에서는 커밋 해시만으로 실제 배포된 코드 전체를 확인할 수 없습니다. 컨트롤 플레인은 이 값을 받은 그대로 기록하고 검증하지 않습니다.

배포 이력 보관

배포 이력은 삭제되지 않으며, 배포 아티팩트는 변경되지 않습니다. 이전에 배포한 모든 버전으로 롤백할 수 있고 보관 개수 제한은 없습니다.

rollback은 새 배포를 만들지 않고 활성 버전만 변경합니다. 따라서 롤백한 뒤 이전에 사용하던 버전을 다시 활성화할 수도 있습니다.

runlot rollback 3   # back to v3

데이터베이스는 롤백하지 않습니다

롤백은 배포 코드만 변경하며, 데이터베이스 스키마와 데이터는 유지됩니다. 마이그레이션까지 되돌려야 한다면 백업과 복원을 참고하세요. 데이터베이스 복원은 특정 시점으로 데이터를 되돌리는 별도의 작업입니다.

컬럼 삭제처럼 되돌릴 수 없는 마이그레이션은 코드 배포와 같은 시점에 적용하지 않는 것이 안전합니다.

이 페이지의 목차