summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoryyamashita <yyamashita@hetzner.yyamashita.com>2026-05-17 22:02:49 +0900
committeryyamashita <yyamashita@hetzner.yyamashita.com>2026-05-17 22:02:49 +0900
commit5bf46bbac5feda06ec10575c6293974d80b2e3df (patch)
treeb5485bb47f9e9eb9f104913ac6e9e26e886b6902
parentedb99c9da2198482345a1c3fc9f24a115d0aa62a (diff)
Fix cgit CSS/JS 404 and update docsHEADmaster
- lighttpd.conf: exempt static files from CGI rewrite - deploy.sh: add --build to rebuild image on config changes - CLAUDE.md, Deploy.md: add cgit directory and deploy notes Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
-rw-r--r--CLAUDE.md9
-rw-r--r--Deploy.md2
-rw-r--r--cgit/deploy.sh2
-rw-r--r--cgit/lighttpd.conf1
4 files changed, 11 insertions, 3 deletions
diff --git a/CLAUDE.md b/CLAUDE.md
index 28206a6..3373a9c 100644
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -6,6 +6,7 @@ Hetzner VPS 上で動くサービス群のインフラ管理リポジトリ。
```
caddy/ リバースプロキシ(Caddyfile, docker-compose.yml, deploy.sh)
+cgit/ cgit Web UI(Dockerfile, lighttpd.conf, cgitrc, deploy.sh)
git/ ベアリポジトリ・フック管理(repos.txt, hooks/, install.sh)
claude/ Claude Code セッション管理(sessions.txt, systemd unit, sync.sh)
server/ サーバー共通設定(authorized_keys, requirements.md)
@@ -13,7 +14,9 @@ server/ サーバー共通設定(authorized_keys, requirements.md)
## デプロイの仕組み
-- `git push origin master` → post-receive フック → `caddy/deploy.sh` だけ実行
+- `git push origin master` → post-receive フック → `caddy/deploy.sh` と `cgit/deploy.sh` を実行
+- cgit の `lighttpd.conf` / `Dockerfile` 変更はイメージ再ビルドが必要(`deploy.sh` で `--build` するため push だけで反映される)
+- cgit の `cgitrc` はボリュームマウントのため push だけで反映される
- フック・リポジトリの変更は push 後に `bash /app/infra/git/install.sh` を手動実行
- Claude セッションの変更は push 後に `bash /app/infra/claude/sync.sh` を手動実行
@@ -33,6 +36,10 @@ server/ サーバー共通設定(authorized_keys, requirements.md)
# Caddy 設定変更
vi caddy/Caddyfile && git push origin master
+# cgit 設定変更(lighttpd.conf / cgitrc)
+vi cgit/lighttpd.conf # または cgit/cgitrc
+git push origin master # --build 付きで自動再デプロイ
+
# フック・リポジトリ定義変更
vi git/hooks/.../post-receive # または git/repos.txt
git push origin master
diff --git a/Deploy.md b/Deploy.md
index 81f60ac..dfa517b 100644
--- a/Deploy.md
+++ b/Deploy.md
@@ -17,7 +17,7 @@ ssh root@<server-ip> 'bash /app/infra/git/install.sh'
## 通常デプロイ
```bash
-git push origin master # Caddy 設定・コンテナ更新
+git push origin master # Caddy 設定・cgit コンテナ更新(自動再ビルド含む)
```
## フック / リポジトリ定義を変更した場合
diff --git a/cgit/deploy.sh b/cgit/deploy.sh
index f8b3f40..276b188 100644
--- a/cgit/deploy.sh
+++ b/cgit/deploy.sh
@@ -1,4 +1,4 @@
#!/usr/bin/env bash
set -euo pipefail
cd "$(dirname "$0")"
-docker compose up -d
+docker compose up -d --build
diff --git a/cgit/lighttpd.conf b/cgit/lighttpd.conf
index bdc295b..1ce38cc 100644
--- a/cgit/lighttpd.conf
+++ b/cgit/lighttpd.conf
@@ -10,5 +10,6 @@ index-file.names = ("cgit.cgi")
cgi.assign = (".cgi" => "")
url.rewrite-once = (
+ "^/(cgit\.css|cgit\.js|cgit\.png|cgit-favicon\.png)$" => "/$1",
"^(/[^?]*)(?:\?(.*))?$" => "/cgit.cgi?url=$1&$2"
)