yakcloud-starter — YakCloud 프로젝트 기반 + CLI + Claude Code 스킬

빈 폴더에서 한 명령으로 프로젝트를 초기화하고, 태그 push로 자동 배포하며, 배포 환경을 CLI로 상세 설정한다. 프레임워크 중립 스타터 앱 + CI + 매니페스트 + yakcloud CLI + Claude Code 스킬(.claude/skills/yakcloud-deploy/) 포함.

CLI 설치 (1회)

curl -fsSL https://gitea.yakenator.io/yakenator/yakcloud-starter/raw/branch/main/install.sh | sh
export PATH="$HOME/.local/bin:$PATH"

빈 폴더 → 배포까지

yakcloud project init my-app     # 스타터+CI+매니페스트+Claude 스킬 스캐폴딩
cd my-app
# (앱 개발 — Claude Code: "yakcloud 로 배포 붙여줘")
yakcloud project info            # 프로젝트 개괄(매니페스트 + 라이브 상태)
yakcloud project deploy          # 커밋 + 태그 push (버전 미지정 시 자동 버전업) → 자동 배포

Claude Code 흐름: 빈 폴더에서 "프로젝트 초기화해줘" → yakcloud project init → 개발 → "yakcloud에 배포해줘" → yakcloud project deploy.

명령

project init [name]          빈 폴더 스캐폴딩
project deploy [vX.Y.Z]      커밋+태그 push → 자동 배포 (버전 생략 시 최신 태그 patch+1 자동 버전업)
project info                 프로젝트 개괄(매니페스트 + 라이브 상태)
project check                dry-run(직접 API 계획만)
─ 배포환경 설정(앱별): 매니페스트 수정 + 배포중이면 재빌드 없이 라이브 반영 ─
domain <fqdn> [wl]           도메인 등록 + 워크로드 할당(관리형=즉시 활성)
scale <wl> <n>               replicas
set <wl> --image/--port/--health/--cpu/--mem/--path/--rewrite
env <wl> KEY=VAL … [--secret KEY] [--unset KEY]
source add <name> <type> [plan] | source rm <name>
bind <wl> <source> <alias>   | unbind <wl> <alias>

필요 env: YAKCLOUD_URL, YAKCLOUD_TOKEN(배포토큰 yakd_…), (선택) YAKCLOUD_CLUSTER

배포 전 1회 준비

  1. 콘솔 → 설정 → 배포 토큰 발급(yakd_…).
  2. Gitea 레포 만들고 git remote add origin …. Secrets: YAKCLOUD_URL, YAKCLOUD_TOKEN, YAKCLOUD_CLUSTER, REGISTRY_TOKEN.
  3. yakcloud.yamlcluster·image(<GITEA_USER>) 수정.

구성

bin/yakcloud                      # CLI 디스패처
install.sh                        # CLI 설치
scripts/yakcloud_deploy.py        # 리컨실 배포 CLI(매니페스트→콘솔 API)
scripts/yakcloud_ctl.py           # info/설정 엔진(매니페스트 편집 + 라이브 PATCH)
.claude/skills/yakcloud-deploy/   # Claude Code 스킬
app.py  Dockerfile                # 프레임워크 중립 스타터
yakcloud.yaml                     # 배포 매니페스트
.gitea/workflows/deploy.yml       # 태그 push CI(매니페스트 구동)
DATA-SOURCES.md                   # 소스별 주입 env 표
Description
YakCloud 배포 기반 스타터 + Claude Code 스킬(yakcloud-deploy)
Readme 1.5 MiB
Languages
Python 65.6%
Shell 34.3%
Dockerfile 0.1%