summaryrefslogtreecommitdiff
path: root/git
AgeCommit message (Collapse)AuthorLines
11 daysstudio-slots を /app/studio-slots にデプロイし管理画面に追加yyamashita-5/+9
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
11 daysgit: studio-slots のフックで作業ディレクトリの所有者を戻すyyamashita-1/+4
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
11 daysgit: studio-slots リポジトリを追加yyamashita-0/+5
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
12 dayshetzner-admin: stop/start individual services, shown as STOPPED on status pageyyamashita-0/+8
- run-command.sh: services / stop <name> / start <name> for app and infra stacks (not caddy, hetzner-admin, status). Stopped names go to status/stopped.txt (gitignored). - status: a stopped service that does not respond is STOPPED (gray), excluded from uptime and DOWN alerts. If it responds it is UP as usual. - Infra deploy.sh skips stopped stacks; app repo pushes clear the flag. - claude-code@.service: Restart=on-failure, and restart-sessions.sh restarts one unit at a time, to avoid the tmux "server exited unexpectedly" race. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01N5eS3U54gzjRXzm65Np1RS
12 daysgit/install.sh: keep hetzner-admin SSH key when installing authorized_keysyyamashita-3/+13
install.sh overwrote /root/.ssh/authorized_keys with server/authorized_keys, dropping the restricted hetzner-admin key and making every admin UI command fail with an SSH authentication error. Append it on install. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
12 daysConsolidate status pages into status.yyamashita.comyyamashita-1/+0
Drop Uptime Kuma (uptime.yyamashita.com) and the hetzner-admin /status page; status-app + ntfy alerts is the single status site. hetzner-admin now just links to it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
12 daysAdd status pages, ntfy alerts, and license-slot-checker repoyyamashita-0/+8
- status/: lightweight status checker (status.yyamashita.com, /api/status) with ntfy DOWN/recovered alerts after consecutive failures - uptime-kuma/: Uptime Kuma at uptime.yyamashita.com - hetzner-admin: authenticated /status page (status-app results + docker ps -a) - ntfy/: self-hosted ntfy at ntfy.yyamashita.com (deny-all auth, install.sh creates admin user and status-app token) - Caddyfile, DNS, post-receive hook, tests/check.sh, docs updated - license-slot-checker: add to repos.txt, hook, and Claude sessions Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-08-22Add todo service: Caddyfile, repos.txt, hook, DNS entryyyamashita-0/+9
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-02Move forward proxy from Squid to Caddy (port 80/443)yyamashita-1/+0
Replace standalone Squid container with caddy-forwardproxy plugin so the proxy shares Caddy's existing ports and TLS. HTTP on :80 and HTTPS on :443. Auth is read from the same vpn/users.conf at Caddy startup via entrypoint.sh. DNS: add proxy to setup-route53.py WEB_SUBDOMAINS. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-02Add HTTPS forward proxy service (Squid on port 8443)yyamashita-0/+1
- proxy/: Squid container with HTTPS port, Basic auth from vpn/users.conf - caddy/Caddyfile: add proxy.yyamashita.com block (RSA cert for compat) - git/hooks: add proxy/deploy.sh to post-receive hook - CLAUDE.md: document proxy setup and client config Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-30Add strongSwan IKEv2 VPN serviceyyamashita-0/+1
- vpn/: Dockerfile, docker-compose.yml, swanctl.conf.tpl, entrypoint.sh - install.sh: Caddy 証明書流用 + コンテナ起動 - renew-cert.sh: 証明書更新 + swanctl ホットリロード - caddy/Caddyfile: vpn.yyamashita.com 追加(Let's Encrypt 証明書取得用) - post-receive: vpn/deploy.sh を追加 - setup-route53.py: WEB_SUBDOMAINS に vpn を追加 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19Add microblog serviceyyamashita-1/+9
- Caddy: route blog.yyamashita.com → microblog-app:3000 - git: add microblog post-receive hook and update work tree path to /app/microblog - DNS: add blog subdomain to Route 53 WEB_SUBDOMAINS Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19Add microblog repo and Claude sessionyyamashita-0/+1
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19Add hetzner-admin: SSH-based server management web UIyyamashita-0/+1
Basic Auth protected web UI with buttons to restart services and reboot. SSH key with authorized_keys command= restriction limits executable commands. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-10Add mosquitone-admin repo and Claude sessionyyamashita-0/+5
Register mosquitone-admin as a managed git repo with post-receive checkout hook, and add yyamashita:mosquitone-admin to the Claude Code session list. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-02Revert "Add cron job registration to install.sh"yyamashita-18/+0
This reverts commit 5e9ed4fe05eda672293dbfe6bf10da6d9635261b.
2026-06-02Add cron job registration to install.shyyamashita-0/+18
Registers daily scrape (05:00 JST) and recap email (08:00 JST) jobs for tokyo-livehouse-events via idempotent crontab install. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-01Add Postfix+OpenDKIM MTA with txt-based domain managementyyamashita-0/+1
- mail/ ディレクトリ追加: Postfix + OpenDKIM の Docker コンテナ - mail/domains.txt で送信ドメインを管理(現在: golive.yyamashita.com) - install.sh が domains.txt から KeyTable/SigningTable を動的生成 - setup-route53.py で SPF/DKIM/DMARC を Route 53 に一括設定 - post-receive フックに mail/deploy.sh を追加 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-17Add cgit web interface at git.yyamashita.comyyamashita-0/+1
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-17Add README.md to each directoryyyamashita-0/+16
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-17Add server/ dir, CLAUDE.md, and SSH key management via install.shyyamashita-0/+15
- server/authorized_keys: root SSH keys managed in repo - server/requirements.md: list of required tools/packages - git/install.sh: now also applies authorized_keys on install - CLAUDE.md: repo overview for Claude Code - Deploy.md: simplified Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-17Reorganize repo into caddy/, git/, claude/ directoriesyyamashita-0/+116
- caddy/: Caddyfile, docker-compose.yml, deploy.sh (hook runs this only) - git/: repos.txt, hooks/*/post-receive, install.sh, server-setup.sh - claude/: sessions.txt, systemd/claude-code@.service, sync.sh Post-receive hook is now: checkout + bash caddy/deploy.sh Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>