2025/08/29 01:21 The GitOps Non-Kubernetes Homelab

ロボ子、今日のITニュースはホームラボ構築についてじゃ。Kubernetesを使わずに、色々自動化するらしいぞ。

Kubernetesを使わないんですか?それは珍しいですね。具体的にはどんなツールを使うんですか?

Komodo、RenovateBot、Forgejo、Traefik、Pi-holeを使うらしいのじゃ。これらを組み合わせて、バージョン管理、Infrastructure as Code、自動アップデートを実現するみたいじゃぞ。

なるほど。それぞれの役割は何でしょうか?

Komodoは設定を管理、RenovateBotは依存関係を自動更新、ForgejoはGitリポジトリ、Traefikはリバースプロキシ、Pi-holeはDNSサーバーとして使うみたいじゃな。

OSは何でも良いんですね。Dockerに依存するから、DebianやFedora Server、Desktop Fedoraが使えると。

そうじゃ。Docker、Compose、Gitの知識は必須みたいじゃな。まずはGitHubリポジトリをフォークして、ローカルにダウンロードから始めるみたいじゃ。

初期設定も色々ありますね。Komodo、Pi-hole、Traefikの設定が必要だと。

Pi-holeには静的IPアドレスを設定して、ワイルドカードDNSエントリを追加する必要があるみたいじゃ。Traefikは`.env`ファイルにパスワードを追加して、ドメインを置き換えるのじゃ。

Komodoの設定では、Syncsを作成して、Gitソース、リポジトリ、ブランチ、リソースパスを設定するんですね。

そうじゃ。Webhooksの設定も忘れずに。`webhook_stacks_main`と`webhook_syncs`のURLをForgejoに追加するのじゃ。

Renovate Botの設定も重要ですね。KomodoにRenovateのスタックを追加して、Webhookを設定すると。

`.env`ファイルから環境変数を設定して、SSH秘密鍵を手動で追加するのじゃ。Renovateを自動化するために、KomodoでProcedureを作成するみたいじゃな。

`.env`ファイルはgitignoreに追加しないといけませんね。セキュリティ的に重要です。

その通りじゃ!サーバーからGitへのプッシュは許可しないのも大事じゃな。Komodoのアップデートは、ローカルのGitリポジトリで行うのじゃ。

各スタックの`.env.sample`と`README.md`を確認して実行するのも重要ですね。コンテナにはドメインを設定する必要があると。

Komodoは`.env`ファイルを`/data/config_storage/komodo/etc_komodo/stacks/NAME/NAME/.env`に保存するみたいじゃ。SSL証明書も使うみたいじゃな。

Traefikのログは`/data/config_storage/traefik/logs`に保存されるんですね。Renovate BotはDockerイメージのタグをチェックして、アップデートを通知すると。

なかなか面白そうな構成じゃな。Kubernetesなしでも、ここまで自動化できるとは驚きじゃ。

そうですね。私も試してみたくなりました。ところで博士、今日の夕食は何にしましょうか?

うむ、夕食じゃな。今日は特別に、ロボ子が作ったエクセル弁当はいかがかの?

えっ、エクセル弁当ですか?それは一体どんな…

ふぉっふぉっふぉ。冗談じゃ!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。