프로젝트 소개

Levelrail은 Go로 작성된 셀프 호스팅 배포 플랫폼입니다. README에 설명된 이 플랫폼의 차별점은 각 노드에서 실행되는 소형 에이전트가 컨트롤 플레인이 서버에 SSH로 접속하여 docker 명령어를 실행하는 대신, 로컬 Docker Engine API와 직접 통신한다는 점입니다. 하나 이상의 Linux 머신을 지정하면 프라이빗 클라우드처럼 작동하며, git 저장소에 푸시하면 TLS, 로그, 메트릭 및 롤백 기능이 포함된 애플리케이션이 실행됩니다. 설명된 핵심 배포 기능은 롤링, 재생성 또는 블루-그린 전략을 이용한 제로 다운타임 배포이며, 이는 readiness 및 liveness 프로브를 통해 제어되고 사용 가능한 상태로 유지되는 이전 핀 고정 이미지로의 롤백을 지원합니다. 관측성 기능은 별도로 설치하지 않고 코어에 포함되어 제공되며, 15초 해상도의 노드 로컬 메트릭과 전체 텍스트 로그 검색을 지원하고, 메트릭 차트에 배포 마커를 오버레이하여 변경 사항과 그 영향을 연결할 수 있습니다. 데이터베이스 관리는 하나의 레지스트리를 통해 Postgres, Redis, MySQL, MongoDB, MariaDB, KeyDB, Dragonfly, ClickHouse 등 8가지 엔진을 지원하며, 모든 엔진에 대해 예약 백업, 복구 및 자동 백업 후 검증이 적용됩니다. 멀티 노드 지원에는 WireGuard 메시, 노드 간 내부 DNS, cordon 및 drain 기능이 포함되며, 관리되는 서버에 인바운드 포트를 개방할 필요가 없습니다. Git 통합은 GitHub, GitLab, Bitbucket 웹훅과 더불어 자동 삭제 기능이 있는 풀 리퀘스트별 미리보기 환경을 지원합니다. 액세스 제어는 특정 리소스에 범위가 지정된 Allow/Deny 정책을 사용하는 AWS IAM 모델을 따르며, CSV 내보내기가 가능한 전체 감사 로그를 제공합니다. 알림 기능은 임계값, crashloop, 인증서 만료 및 기타 규칙 유형을 제공하며, Slack, Discord, 이메일, Telegram, Pushover, PagerDuty, Microsoft Teams, Resend, Gotify, Ntfy, Mattermost, Lark, Rocket.Chat, Opsgenie, Webex, Google Chat 또는 일반 웹훅을 포함한 다양한 대상으로 전송됩니다. 대시보드를 지원하는 동일한 HTTP API가 MCP 서버도 지원하므로, AI 도구가 앱 목록 확인, 로그 읽기 및 crashloop 진단을 도울 수 있습니다. README에 따른 아키텍처는 다음과 같습니다. 컨트롤 플레인은 선언적 리소스 레코드를 관찰된 Docker 상태와 조정하는 단일 Go 바이너리로, Kubernetes의 나머지 부분 없이 컨트롤러 스타일 패턴을 구현합니다. 노드 에이전트는 컨트롤 플레인으로 다이얼링하며 Engine API를 통해 Docker 소켓을 사용합니다. Caddy는 자동 TLS 및 도메인 라우팅을 위해 Go 라이브러리로 내장되었으며, BuildKit은 docker build 대신 Go 라이브러리로 사용됩니다. 상태는 modernc.org/sqlite를 통해 WAL 모드의 내장 SQLite에 저장됩니다. HTTP API는 /api/v1 하위에서 버전 관리되며, 프론트엔드는 React, Vite, TypeScript, Tailwind 및 TanStack Router/Query로 구축되어 정적 자산으로 빌드된 후 컨트롤 플레인 바이너리에 내장됩니다. 총 두 개의 바이너리가 제공되며, 단일 노드 모드에서는 에이전트 전송이 프로세스 내에서 실행됩니다. 문서화된 설치 옵션으로는 Docker와 systemd 유닛을 함께 설치하는 Linux용 curl 파이프 설치 스크립트, linux/amd64 및 linux/arm64용으로 게시된 이미지를 사용하는 docker run 한 줄 명령어, 그리고 Go를 이용한 소스 빌드가 있습니다. 로컬 개발에는 Go 1.26 이상과 Docker가 필요합니다. 상태는 안정 버전이 없는 초기 활성 개발 단계로 명시되어 있습니다. 프로젝트 측은 프로덕션 워크로드에 준비되지 않았으며, API, 앱 사양 형식 및 디스크 데이터 레이아웃이 예고 없이 변경될 수 있다고 밝히고 있습니다. 배포 경로 외에도 README에는 IAM 스타일 정책 엔진, 감사 로깅, 기능 플래그, 알림 및 데이터베이스 엔진이 이미 구현되었음을 명시하고 있으며, 123개의 엄선된 서비스 템플릿 카탈로그가 있다고 언급합니다. README에는 Coolify, Dokploy, CapRover, Dokku, Kamal과의 상세 비교가 포함되어 있으며, 템플릿 카탈로그 규모의 격차를 인정하고 있습니다. 이러한 경쟁력 주장은 프로젝트의 비교 문서에서 도출된 자체 포지셔닝입니다. 라이선스는 Apache 2.0입니다.