ふくふくHukuhuku Inc.
EP.07Toolbox 8分公開: 2026-05-10

ローカル開発環境を綺麗に保つ道具:mise / direnv / docker / devcontainer

「Python のバージョン地獄」「.env のリーク」── プロジェクトごとに環境を切り替える道具を整理。最近は mise が pyenv/nvm/asdf を統合する流れ。

#道具箱#mise#direnv#docker
シェア

プロジェクトごとに違う Python / Node / Ruby のバージョン.env のリーク事故 ── ローカル開発環境を綺麗に保つ道具を整理します。

1. 推奨セット

  • mise(旧 rtx):多言語バージョンマネージャ、asdf 互換、Rust 製で速い
  • direnv:ディレクトリごとに環境変数を自動切替
  • / devcontainer:OS レベルの隔離、VSCode との統合◎
  • uv:Python の pip + venv の Rust 実装、爆速
  • git-secrets / detect-secrets:機密情報の commit 防止

2. プロジェクト雛形

プロジェクト初期化テンプレ
Bash
# .mise.toml で Python/Node を固定cat > .mise.toml <<'EOF'[tools]python = "3.12"node = "22"uv = "latest"EOF
# .envrc で環境変数cat > .envrc <<'EOF'export DATABASE_URL=postgres://localhost/devexport ANTHROPIC_API_KEY=$(cat ~/.secrets/anthropic.key)layout python  # venv を自動アクティベートEOF
direnv allowmise install  # ツール一括インストールuv pip install -r requirements.txt

3. devcontainer (VSCode 連携)

.devcontainer/devcontainer.json
JSON
{  "name": "Python Project",  "image": "mcr.microsoft.com/devcontainers/python:3.12",  "features": {    "ghcr.io/devcontainers/features/node:1": { "version": "22" },    "ghcr.io/devcontainers/features/docker-in-docker:2": {}  },  "postCreateCommand": "uv pip install -r requirements.txt",  "customizations": {    "vscode": {      "extensions": ["ms-python.python", "charliermarsh.ruff"]    }  }}

4. 機密情報の漏洩防止

  • .gitignore に .env / secrets/ を必ず追加
  • git-secrets / detect-secrets を pre-commit hook に
  • API キーは環境変数 or 1Password CLI から取得
  • SOPS / SealedSecrets で暗号化 commit (チーム共有 OK)

5. よくある落とし穴

  • Python venv の活性化忘れ: direnv の layout python で自動化
  • Node のバージョン違いでビルド失敗: .mise.toml で固定
  • .env を git commit: 一度やったら API キー全部ローテート
  • Mac と Linux で違う挙動: devcontainer で統一
  • Docker のイメージサイズ肥大: multi-stage build で最終イメージを小さく

ふくふくの進め方

社内プロジェクト雛形として配布、新規プロジェクトの立ち上げが 1 日で済む状態を作ります。Python / Node / Go の主要 stack でテンプレ用意済み。

次回予告

EP.08 は 運用の道具:k9s / Stern / Lens。

シェア

この記事の感想を教えてください

あなたの 1 クリックで、本当にこの記事は更新されます。「もっと詳しく」「続編希望」が一定数集まった記事は、 ふくふくが 実際に内容を拡充したり続編記事を公開 します。 送信したリアクションはお使いのブラウザに記録され、再カウントされません。

シリーズの外も探す:

まずは、現状を聞かせてください。

要件が固まっていなくて大丈夫です。現状診断と方針提案までを無料でお手伝いします。

無料相談フォームへ hello [at] hukuhuku [dot] co [dot] jp