Skip to Content
가이드Deplite 소개

Deplite 소개

Deplite는 안전한 배포·운영 자동화를 위한 셀프호스팅 워크플로우 엔진이에요.
핵심 철학은 단 하나, “워크플로우 정의는 서버에, 실행은 당신의 인프라에”예요.

왜 새로 만들었나요?

GitHub Actions, GitLab CI, CircleCI 같은 SaaS형 CD 도구는 편리하지만 두 가지 한계가 있어요.

  1. 시크릿이 외부에 보관됩니다. 클라우드 키, DB 비밀번호 같은 민감한 값이 외부 서비스에 저장돼요.
  2. 실행 로그도 외부에 남습니다. 배포 도중 표준 출력으로 흘러나간 내부 정보가 외부 저장소에 누적돼요.

Deplite는 이 두 문제를 실행 분리로 풀어요.
서버는 “누가 무엇을 실행해도 되는지”만 알고, 실제 명령어와 시크릿은 당신의 인프라에 설치된 Agent 안에서만 머물러요.

3계층 구조

Deplite는 세 부분으로 동작해요.

계층역할어디에 사나요
Backend조직·사용자·트리거 관리, 명령 발송Deplite 운영 서버 또는 셀프호스팅
Frontend대시보드, Job 모니터링, 토큰 관리Deplite 운영 서버 또는 셀프호스팅
Agent실제 워크플로우 실행, 로그·시크릿 보관당신의 인프라 (서버·Docker·K8s)

가장 중요한 점은 마지막 줄이에요.
Agent는 당신의 인프라에 설치되고, 시크릿 환경변수와 작업 로그는 절대 Agent 밖으로 나가지 않아요. 서버에 올라가는 건 “성공/실패” 같은 상태와 stdout 일부(log_level: summary로 제어)뿐이에요.

어떻게 안전한가요?

  • ED25519 서명: 서버가 Agent에 보내는 모든 실행 명령은 ED25519로 서명돼요. Agent는 등록 시 받은 서버 공개키로 검증해요.
  • Nonce 캐시: 모든 요청은 nonce를 포함해, LRU 캐시(TTL 10분)로 재생 공격을 막아요.
  • 요청 서명: Agent가 서버로 보내는 요청도 ED25519로 서명되고, X-Timestamp 검증으로 ±60초만 유효해요.
  • 토큰 격리: API 토큰은 SHA256으로 해시되어 저장되고, 평문은 발급 시점에만 한 번 보여요.

자세한 내용은 보안 모델에서 확인하세요.

어떤 작업에 쓰나요?

배포뿐만이 아니에요.
“운영팀이 손으로 돌리던 모든 일”을 Deplite로 옮길 수 있어요.

  • 배포: kubectl, docker push, Terraform apply
  • 정기 백업: DB dump, S3 동기화 (Cron 트리거)
  • ETL·동기화: 외부 API → 내부 DW 동기화
  • 헬스체크·자동 복구: 주기적 점검 후 이상 시 재시작
  • 정리 작업: 오래된 로그·임시 파일 삭제
  • 온콜 자동 응답: Slack 슬래시 명령으로 즉시 진단·복구 스크립트 실행

다음 단계

빠른 시작으로 넘어가서 첫 워크플로우를 실행해 보세요.

최종 수정 일자: