私のホームラボ構成

(Note: If a more formal tone is desired, you could say 「私のホームラボ設定」.)

2026/03/09 1:46

私のホームラボ構成 (Note: If a more formal tone is desired, you could say 「私のホームラボ設定」.)

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

著者は、2018年に購入した旧型のゲーミングPC(AMD Ryzen 5 2600X、ASRock B450 Pro4‑ATXマザーボード、16 GB RAM、GTX 1070 Ti GPU)を、自宅ラボ用データストレージハブへと改造しました。これによりローカルおよびオフサイトのバックアップが可能となり、複数の個人サービスも稼働させています。

  • ストレージ:2台の8 TB Western Digital Red Plus HDDをRAID 1構成で冗長化。OSは500 GB Samsung 850 EVO SSDにインストールし、TrueNAS Community Edition(v25.10.1 “Goldeye”)は500 GB WD Blue SN550 NVMeドライブに配置。
  • バックアップ:TrueNASが毎時・毎日・毎週スナップショットを作成し、自動でクリーンアップ。Backrest(Resticフロントエンド)が毎日Backblaze B2オブジェクトストレージバケットへバックアップ。
  • 監視:ScrutinyがS.M.A.R.T.により4台のドライブを監視し、ヘルストレンドを表示。
  • サービス:Immichで写真/動画管理、Mealieでレシピ(URLスクレイピング)管理、OllamaでGPUの8 GB VRAMを活用した小規模LLMの推論とベクトル埋め込み実行。
  • リモートアクセス:Tailscale/WireGuard経由でシステムに接続。将来的には生IP+ポート組み合わせを公開しないよう、カスタムドメイン名を割り当てる計画。

本プロジェクトはハードディスク価格の上昇と信頼性の高いオフサイトバックアップへのニーズから始まり、余剰機材を低コストで自己ホスト型バックアップ・コンピュートノードへ再利用する方法を示しています。

本文

長らく私は Fujifilm の RAW ファイル用に良いバックアップとストレージソリューションを見つけることを先延ばしにしていました。以前の方法は、写真を手動で 2 台の外付け SSD にコピーするという面倒な作業で、オフサイトのバックアップ戦略がありませんでした。

AI データセンター拡張によるハードディスク価格高騰のニュースを聞き続けていたため、やっとドライブを購入し、自宅ラボを構築してストレージとバックアップニーズに対応しました。さらに、試したいと思っていたアプリをセルフホストする機会にもなりました。


目次

  • ハードウェア
  • TrueNAS オペレーティングシステム
  • 現在セルフホストしているアプリ
    • Scrutiny
    • Backrest
    • Immich
    • Mealie
    • Ollama
  • リモートアクセス
  • 次のステップ

ハードウェア

私は 2018 年に組み立てた旧ゲーム PC をこの用途に再利用しました。機種のスペックは以下の通りです。

コンポーネント製品
CPUAMD Ryzen 5 2600X 3.6 GHz (6‑core)
マザーボードASRock B450 Pro4 ATX AM4
RAMG.Skill Flare X 16 GB (2×8 GB) DDR4‑3200 CL14
GPUEVGA FTW2 Gaming iCX GeForce GTX 1070 Ti 8 GB
ケースFractal Design Meshify C ATX Mid Tower
PSUSeaSonic PRIME Gold 650 W 80+ Gold
HDD (RAID‑1)2× Western Digital Red Plus 8 TB 3.5″
SSD (OS & apps)Samsung 850 EVO 500 GB 2.5″
NVMe (TrueNAS)Western Digital Blue SN550 500 GB M.2‑2280

Western Digital のドライブは冬休みの間に購入し、他のコンポーネントは既に PC に組み込まれていました。


TrueNAS オペレーティングシステム

NVMe ドライブに TrueNAS Community Edition(バージョン 25.10.1 “GoldEye”)をインストールしました。ネットワーク接続型ストレージ向けに設計された Linux ベースの OS で、ネットワーク上の任意のデバイスからファイルアクセスが可能です。

主な機能:

  • スナップショット – 時間単位・日次・週次で自動作成。古いスナップは設定期間後に削除されます。
  • RAID 1 – 2 台の 8 TB HDD のデータをミラーリングし、単一ドライブ障害から保護します。
  • SSD は高速読み書きが必要なサービス用です。

現在セルフホストしているアプリ

TrueNAS はコミュニティメンテナンスのアプリカタログをサポートし、直接マシンにインストールできます。

Scrutiny

S.M.A.R.T. 指標(温度・稼働時間・読み取りエラー)でドライブヘルスを監視する Web ダッシュボード。過去のトレンドと障害予兆が表示されます。

Backrest

Restic の Web フロントエンドです。日次バックアップを Backblaze B2 のオブジェクトストレージバケットに送信します。

Immich

iOS/Android アプリ付きのオープンソース写真/動画管理ツール。Google Photos や iCloud に頼らず、モバイルデータをバックアップできます。

Mealie

レシピ管理ツールです。URL からレシピをインポートし、Mealie が自動で材料と手順をスクレイピングしてくれます。

Ollama

ローカルで AI モデルを実行するためのバックエンド(例:qwen3.5:4b, gemma3:4b)。すべてのモデルが GPU の 8 GB VRAM に収まるので、ラップトップからホームラボへ推論をオフロードできます。


リモートアクセス

Tailscale(WireGuard ベース)で安全かつ即座に VPN アクセスを実現しています。ホームラボ PC はパブリック IP を必要とせず、Tailscale アプリがインストールされたデバイスならどこからでもプライベートアドレス経由でサービスへアクセスできます。


次のステップ

現在はマシンの IP または Tailscale アドレス+ポート番号を入力して各サービスにアクセスしています。すべてのサービスが同じ IP を共有するため、パスワードマネージャーがログイン情報を区別できずに困っています。

今後の計画:

  • 各サービスにカスタムドメイン名(例:
    immich.example.com
    ,
    mealie.example.com
    )を割り当て、アクセスしやすく、認証管理も簡素化する。
  • NGINX/Traefik などのリバースプロキシソリューションを検討し、ルーティングを効率化する。

タグ: #TrueNAS #Backup #SelfHosting #HomeLab #NAS #S.M.A.R.T. #Restic #Immich #Mealie #Ollama #Tailscale #RAID1

同じ日のほかのニュース

一覧に戻る →

2026/03/09 5:30

エージェント・セーフハウス – macOS ネイティブサンドボックスによるローカルエージェントの保護 --- **ポイント解説** - **Agent Safehouse** は、macOS 上で動作するローカルエージェント(バックグラウンドプロセスやサービス)を安全に隔離し、外部からの不正アクセスや権限昇格を防ぐための仕組みです。 - 「macOS‑native sandboxing」は、Apple が提供するサンドボックス機能(`sandbox-exec`, `com.apple.security.*` など)を利用しており、追加のソフトウェアやカーネル拡張は不要です。 **主な特徴** 1. **最小権限で実行** – 必要最低限のファイル・ネットワークアクセスのみ許可し、それ以外は自動的にブロック。 2. **監査ログ** – アクセス試行や失敗がすべて記録され、後からトラブルシューティングやセキュリティ調査に利用可能。 3. **設定の柔軟性** – プロファイルベースでポリシーを定義でき、企業規模に合わせた細かな制御が可能。 **実装例(サンドボックスプロファイル)** ```xml <key>com.apple.security.app-sandbox</key> <true/> <key>com.apple.security.files.user-selected.read-write</key> <true/> ``` このように、エージェント・セーフハウスは macOS の標準機能だけで安全性を大幅に向上させるソリューションです。

## Japanese Translation: > Safehouse は、ローカル AI エージェントがアクセスできるファイルを厳密に制御する軽量な macOS ネイティブサンドボックスです。デフォルトでは「deny‑first」ポリシーに従い、指定されたワークスペース外への読み書き試行はカーネルエラー(“Operation not permitted”)を引き起こし、SSH キーや `.aws` などの機密項目やその他個人リポジトリを保護します。ツールは `curl` を使って `~/.local/bin` にインストールされる単一の Bash スクリプト(`safehouse.sh`)でセットアップされます。 > > エージェントは `safehouse claude --dangerously-skip-permissions` のようなコマンドで呼び出され、現在の作業ディレクトリ(通常は git リポジトリルート)への読み書きアクセスを自動的に許可し、インストール済みツールチェーンへの読み取りアクセスのみを許可して残りのホームディレクトリは拒否します。 > > 上級ユーザーは `safe() { safehouse --add-dirs-ro=~/mywork "$@"; }` のようなシェル関数を `.zshrc` や `.bashrc` に追加し、すべてのエージェント呼び出しがデフォルトで Safehouse 内で実行されるようにできます。セッションごとにサンドボックスをバイパスするには、コマンドに文字列 `command` を接頭辞として付けます(例:`command claude`)。 > > このゼロコンフィグ方式により、開発者やチームはローカルファイルとの AI 連携を安全に行い、個人プロジェクト、クラウド認証情報、企業リポジトリでの偶発的なデータ漏洩を減らすことができます。

2026/03/09 6:40

**ブラックスカイ・AppView**

## Japanese Translation: Blacksky の AppView は Bluesky Social PBC の AT Protocol 参考実装をフォークしたもので、**外部からの貢献やプルリクエストは受け付けません**。すべての変更は `packages/bsky`、`services/bsky` の3つのディレクトリと1つのマイグレーションファイルに限定され、参考コードの大部分を保持しています。 リポジトリは組み込みの TypeScript フィーホーズコンシューマーを Rust ベースのインデクサ **rsky‑wintermute** に置き換えており、並列キューを通じて約10 k+ レコード/秒を取り込むことができます。Wintermute はブートストラップツール(`queue_backfill`、`direct_index`、`label_sync` など)を提供し、ライブインデクシングとバックフィルを分離します。 主なパフォーマンス最適化は次の通りです: - PostgreSQL の LATERAL JOIN 再書き込み(`getTimeline` / `getListFeed` 用) - Redis キャッシュレイヤー(アクタープロファイル TTL 60 s、レコード TTL 5 m、相互作用カウント TTL 30 s、投稿メタデータ TTL 5 m) - 通知設定のサーバー側強制 実装された修正: - JWT 検証における古い署名鍵の処理 - JSON のサニタイゼーションで null バイト/制御文字を除去 - アクターメモリキャッシュ内の protobuf タイムスタンプバグへの対策 Blacksky は **コミュニティ投稿サポート** をカスタムレキシコン namespace(`community.blacksky.feed.*`)と専用 `community_post` テーブル、データプレーン/API 層でのメンバーシップゲーティングを通じて追加しています。これは混在した投稿スレッド(`getPostThreadV2`)とも統合されます。 全体アーキテクチャフロー: Bluesky Relay → rsky‑wintermute(フィーホーズコンシューマ/バックファラー/ラベルインデクサ) → PostgreSQL 17 → bsky‑dataplane(gRPC) → オプションの Redis キャッシュ → bsky‑appview(HTTP) → リバースプロキシ、Palomar が OpenSearch 検索機能を提供 バックフィル性能: ライブインデクシングは約1 k イベント/秒。42 M ユーザーと 18.5 B レコードのフルバックフィルは10 k レコード/秒で 2–4 週間、部分的なバックフィルは数時間〜数日で完了 ブートストラップ課題への対策: - PostgreSQL COPY による JSON 腐敗 - null バイト処理 - タイムスタンプ精度の強制 - 通知テーブルの肥大化緩和 - 投稿埋め込みテーブルの人口化 - ラベル否定順序 - Fjall キュー毒性解決 - TLS プロバイダ初期化 - アカウント移行後の署名鍵回転 **フルネットワーク AppView のリソース要件:** ≥ 16 CPU コア(推奨 48+)、≥ 64 GB RAM(256 GB 推奨)、10 TB NVMe ストレージ(28 TB RAID 推奨)、同一マシンまたは低遅延での PostgreSQL、継続的ネットワーク 100 Mbps(1 Gbps+)以上の取り込み帯域 リポジトリは MIT/Apache 2.0 のデュアルライセンスです。アップストリーム同期手順は `git remote add upstream https://github.com/bluesky-social/atproto.git` で提供されています。

2026/03/09 4:58

「エージェント時代にリテラトープログラミングを見直すべきです。」

## Japanese Translation: > 本稿は、コードと説明文を組み合わせたリテラトープログラミングが、AI エージェント(例:Claude や Kimi)が Org‑Mode ファイルを単一の真実源として扱う場合に実用化できることを主張しています。 > > Org の構文を解析することで、これらのエージェントはランブックを生成し、埋め込みコードブロックを実行し、Jupyter ノートブックのように結果を保存し、プローズとコードを同期して自動的に更新できるため、ナラティブと実行可能なスクリプトを分離する手作業「タンギング」ステップが排除されます。 > > 著者は、Org Mode を設定管理に個人的に使用した例でこれを示しています:エディタ内で直接コマンドを書き込み、それらを実行し、メモを自動的に取得します。 > > コードとプローズの2つの並列文書を維持することは採用への一般的な障壁ですが、AI 主導のワークフローは `AGENTS.md` ファイルに記載された指示(実行前のタンギング、常にステップを説明するプローズ、両側を同期させる)に従うことでそのオーバーヘッドを排除します。 > > このアプローチはワークフローを合理化し、コードベースを複数の読みやすいフォーマットへエクスポートしやすくし、「コードを書く」から「コードを読む」へのシフトを促進します。また、大規模プロジェクトにおける Org‑Mode の Emacs 統合の限界を浮き彫りにし、リテラトープログラミングの普及を広げるために Markdown などの類似フォーマットを推奨することも示唆しています。