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

빈 폴더에서 한 명령으로 새 프로젝트를 초기화하고, 태그 push로 YakCloud에 자동 배포하기 위한 기반. 프레임워크 중립 스타터 앱 + 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
# PATH: export PATH="$HOME/.local/bin:$PATH"

빈 폴더 → 배포까지

yakcloud init my-app        # 빈 폴더에 스타터+CI+매니페스트+Claude 스킬 스캐폴딩
cd my-app
# (앱 개발 — Claude Code 로: "yakcloud 로 배포 붙여줘" / 앱 코드 작성)
# yakcloud.yaml 의 cluster / image(<GITEA_USER>) 수정, 필요하면 requires·binds 추가
yakcloud deploy v0.1.0      # 커밋 + 태그 push → Gitea Actions 자동 배포

Claude Code 흐름: 빈 폴더에서 Claude Code를 열고 "프로젝트 초기화해줘" → Claude가 yakcloud init 실행 → 개발 → "yakcloud에 배포해줘" → Claude가 yakcloud deploy 실행. (CLI가 없으면 스킬의 수동 절차로 진행)

배포 전 1회 준비

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

사전 점검(직접 API, 계획만):

YAKCLOUD_URL=https://console.yakenator.io YAKCLOUD_TOKEN=yakd_… yakcloud check

구성

bin/yakcloud                      # CLI(init/deploy/check)
install.sh                        # CLI 설치
.claude/skills/yakcloud-deploy/   # Claude Code 스킬(SKILL.md + assets) — 프로젝트에 그대로 따라감
app.py  Dockerfile                # 프레임워크 중립 스타터(표준 라이브러리, /healthz + PORT)
yakcloud.yaml                     # 배포 매니페스트
.gitea/workflows/deploy.yml       # 태그 push CI(매니페스트 구동 — 수정 불필요)
scripts/yakcloud_deploy.py        # 리컨실 배포 CLI
DATA-SOURCES.md                   # 소스별 주입 env 표

확장(추가/삭제)

  • 워크로드/데이터소스/도메인 추가·삭제yakcloud.yaml 을 편집하고 yakcloud deploy — 멱등 리컨실로 반영.
  • 상세: .claude/skills/yakcloud-deploy/SKILL.md.
Description
YakCloud 배포 기반 스타터 + Claude Code 스킬(yakcloud-deploy)
Readme 1.5 MiB
Languages
Python 65.6%
Shell 34.3%
Dockerfile 0.1%