원문 캡처 · github.com
원문 캡처 · github.com

rbit는 저장소 호스팅과 이슈·풀 리퀘스트·리뷰·CI 상태 확인을 자체 서버에서 운영하도록 만든 오픈소스 Git 서비스다. Rust로 작성한 단일 바이너리로 배포하며 PostgreSQL이나 Redis 같은 외부 서비스는 필요하지 않지만, 서버에서 Git 실행 파일은 필요하다.

Docker로 실행하는 기본 방법은 다음과 같다.

sh
docker run -d --name rbit -p 3000:3000 -v rbit-data:/data ghcr.io/gitrbit/rbit:latest

http://localhost:3000에 접속해 계정을 만들면 첫 계정이 사이트 관리자가 된다. 저장소를 만든 뒤 원격 저장소를 추가하고 푸시할 수 있다.

sh
git remote add rbit http://localhost:3000/<you>/<repo>.git
git push rbit main

저장소는 Git over HTTPS와 SSH를 지원하며, 이슈와 풀 리퀘스트, 브랜치 보호, Git LFS, 외부 CI용 상태 API, 웹훅도 제공한다. GitHub와 GitHub Enterprise, Gitea/Forgejo에서 저장소를 가져올 수 있다. 제작자는 비밀번호 해싱, 2단계 인증, 권한 범위가 지정된 토큰과 외부 요청 제한 등 보안 기능도 소개한다.

데이터 저장에는 SQLite와 redb, Git 저장소를 사용하며, Docker 없이 릴리스 바이너리를 내려받거나 소스에서 빌드할 수도 있다. 소스 빌드에는 Rust 1.94 이상, Git, 빌드 시점의 Node.js가 필요하다. 릴리스 바이너리는 Linux, macOS, Windows용으로 제공된다. 프로덕션 배포 절차는 배포 문서, 전체 기능과 사용법은 프로젝트 저장소에서 확인할 수 있다.