【T-05】miniPCを”常時起動の開発サーバー”にしたら開発スタイルが変わった
kome
🔧 TECH ARTICLE 🔧
〜 T-05 〜
miniPCを”常時起動の開発サーバー”にしたら開発スタイルが変わった
⚙️ はじめに
個人開発で最も高いハードルは、「PCの前に座って環境を立ち上げる」という初動です。仕事で疲れて帰宅した後にデスクトップPCを開くのは、心理的にも物理的にもしんどい。
この問題を解決するのが、「重い作業環境」と「軽い接続端末」の分離という考え方です。自宅のminiPCを24時間稼働の開発サーバーにして、スマホやタブレットからSSH接続すれば、いつでもどこでも開発の続きが始められます。
本記事では、miniPCを開発サーバーとして構築する具体的な手順と、それによって変わる開発スタイルを解説します。
⚙️ アーキテクチャ概要
▸ 基本構成
接続端末(軽量) 開発サーバー(常時起動)
┌──────────────────┐ ┌──────────────────────┐
│ iPhone / iPad │ │ Ubuntu miniPC │
│ Android │ Tailscale │ │
│ MacBook │ ──────────→│ SSH Server │
│ │ 暗号化 │ Docker │
│ SSHクライアント │ トンネル │ Code-Server │
│ ブラウザ │ │ Node.js / Python │
│ VS Code Remote │ │ Claude Code │
└──────────────────┘ └──────────────────────┘
端末は表示だけ 計算はすべてここ
バッテリー消費少 電気代 月100〜300円
▸ 設計思想
従来の開発スタイル:
開発者 → デスクトップPC(開発環境 + 表示 + 入力)
すべてが1台に集約
PCの前に座らないと何もできない
分離型の開発スタイル:
開発者 → 接続端末(表示 + 入力のみ)
│
▼
開発サーバー(環境 + 計算 + ストレージ)
24時間稼働、接続すれば即座に作業再開
| 項目 | 従来型 | 分離型 |
|---|---|---|
| 開発開始までの時間 | PC起動 + 環境立ち上げ(5〜10分) | SSH接続(5秒) |
| 場所の制約 | PCの前のみ | どこからでも |
| 持ち物 | ノートPC(1.5kg〜) | スマホだけでもOK |
| 作業の中断・再開 | 毎回環境を復元 | tmuxでセッション維持 |
| 電気代 | 使用時のみ(PC: 50〜150W) | 常時起動(miniPC: 6〜15W) |
⚙️ miniPCの選定
▸ 推奨スペック
| 項目 | 最低限 | 推奨 |
|---|---|---|
| CPU | Intel N100 / AMD相当 | Intel N305 / AMD Ryzen 5 |
| メモリ | 8GB | 16GB |
| ストレージ | 256GB SSD | 512GB NVMe SSD |
| 消費電力 | 6〜10W | 10〜15W |
| 価格帯 | 2〜3万円 | 4〜6万円 |
▸ ランニングコスト
電気代の目安(24時間365日稼働):
消費電力 10W の場合:
10W × 24時間 × 30日 = 7.2kWh/月
7.2kWh × 30円/kWh ≈ 216円/月
消費電力 15W の場合:
15W × 24時間 × 30日 = 10.8kWh/月
10.8kWh × 30円/kWh ≈ 324円/月
→ 月額200〜350円で24時間開発サーバーが稼働
クラウドの仮想サーバー(VPS)と比較すると、同等スペックで月額1,000〜3,000円程度かかるため、長期運用ではminiPCのほうがコスト効率が高くなります。
⚙️ 構築手順
▸ 全体の流れ
Step 1: Ubuntu Serverインストール (20分)
│
▼
Step 2: 開発ツールのセットアップ (15分)
│
▼
Step 3: SSH設定とセキュリティ強化 (10分)
│
▼
Step 4: Tailscaleでリモートアクセス (5分)
│
▼
Step 5: 接続端末の準備 (10分)
│
▼
完了: 合計 約1時間
▸ Step 1: Ubuntu Serverインストール
Ubuntu Server公式サイトからISOイメージをダウンロードし、USBメモリに書き込んでインストールします。
インストール時の設定:
エディション: Ubuntu Server 24.04 LTS
パーティション: デフォルト(自動)
OpenSSH Server: インストール時に有効化
ユーザー名: 任意(以降 dev で記載)
▸ Step 2: 開発ツールのセットアップ
# システム更新
sudo apt update && sudo apt upgrade -y
# 基本ツール
sudo apt install -y git curl wget build-essential
# Node.js(fnm経由)
curl -fsSL https://fnm.vercel.app/install | bash
fnm install --lts
# Python
sudo apt install -y python3 python3-pip python3-venv
# Docker
curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER
# tmux(セッション維持用)
sudo apt install -y tmux
# Code-Server(ブラウザ版VS Code)
curl -fsSL https://code-server.dev/install.sh | sh
▸ Step 3: SSH設定とセキュリティ強化
推奨するSSH設定(/etc/ssh/sshd_config):
Port 22
PasswordAuthentication no ← パスワード認証を無効化
PubkeyAuthentication yes ← 鍵認証のみ許可
PermitRootLogin no ← rootログイン禁止
MaxAuthTries 3 ← 認証試行回数を制限
Fail2banで不正アクセスを自動ブロックします。
sudo apt install -y fail2ban
sudo systemctl enable --now fail2ban
▸ Step 4: Tailscaleでリモートアクセス
Tailscaleを使えば、ポート開放なしで外出先からアクセスできます。詳細な仕組みと設定手順は【T-04】を参照してください。
# Tailscaleインストール
curl -fsSL https://tailscale.com/install.sh | sh
sudo tailscale up
# 接続確認
tailscale status
▸ Step 5: tmuxによるセッション維持
tmuxを使うと、SSH接続を切断しても作業セッションが維持されます。次回接続時に即座に前回の続きから再開できます。
セッション管理の基本:
tmux new -s dev ← 新しいセッション作成
tmux attach -t dev ← 既存セッションに再接続
Ctrl+b → d ← セッションから離脱(プロセス継続)
接続の流れ:
iPhone → SSH接続 → tmux attach → 前回の続きから即再開
⚙️ 日常の開発フロー
▸ 1日の開発リズム
朝の電車(5分):
iPhone → SSH → tmux attach
→ 小さなバグ修正をコミット
昼休み(10分):
タブレット → Code-Server(ブラウザ)
→ 新機能のコンポーネントを作成
夜のソファ(15分):
iPad → SSH → Claude Code起動
→ 要件定義の整理やコード生成
寝る前(5分):
iPhone → SSH
→ ドキュメント更新してプッシュ
▸ Claude Codeとの組み合わせ
miniPCの常時起動環境は、Claude Codeとの相性が良好です。
活用例:
1. 要件定義のブラッシュアップ
iPhone → SSH → claude
→ 「この機能の要件を整理して」
2. チケットのTODOリスト作成
→ 「このissueをタスク分解して」
3. コード生成と修正
→ 「この関数にエラーハンドリングを追加して」
4. 作業メモの自動記録
→ CLAUDE.mdに実行結果や修正状況を記録
→ 次回セッションでスムーズに作業再開
⚙️ さらなる効率化
▸ Docker Composeで複数プロジェクト管理
プロジェクト構成例:
~/projects/
├── project-a/
│ └── docker-compose.yml ← フロントエンド + API
├── project-b/
│ └── docker-compose.yml ← バッチ処理
└── project-c/
└── docker-compose.yml ← 個人ブログ
各プロジェクトを独立して起動・停止可能
▸ GitHub Actionsとの連携
開発フロー:
miniPCでコード修正
│
▼
git push
│
▼
GitHub Actions が自動実行
├─ テスト実行
├─ リント・型チェック
└─ デプロイ(mainブランチのみ)
│
▼
結果をスマホで確認
▸ 自動起動設定
miniPCが再起動しても、開発環境が自動復旧するように設定します。
systemdサービス例(Code-Server):
sudo systemctl enable code-server@$USER
Docker Composeの自動起動:
restart: unless-stopped をdocker-compose.ymlに追加
⚙️ まとめ
miniPCを常時起動の開発サーバーにすることで、「PCの前に座る」というハードルが消え、開発が日常の隙間時間に溶け込みます。
構築に必要なもの:
ハードウェア: miniPC(2〜6万円)
ソフトウェア: Ubuntu Server + SSH + Docker + Tailscale
接続端末: スマホ / タブレット / ノートPC
構築時間: 約1時間
ランニングコスト: 月200〜350円(電気代)
得られるもの:
・どこからでも5秒で開発開始
・tmuxで作業セッション維持
・Claude Codeで生産性向上
・場所と時間の制約からの解放
⚙️ 参考リンク
この記事はminiPCを開発サーバーとして活用する実践ガイドです。
⚙️ Tech Series – T-05 🔧
Engineering the future…