Claude Docker ラッパー(claude-docker)

DevOps

概要

claude-dockerは、Anthropicの「Claude Code」コマンドラインツールをDockerコンテナ内で実行するためのシンプルなラッパーです。ホストの設定や認証情報をコンテナへマウントして永続化することで、ローカルに依存する設定を保ちながら隔離された実行環境を提供します。インストールはcurlで配布されるinstall.shを実行するだけで、~/.local/binにclaude-dockerコマンドを設置します。コマンドは受け取った引数をそのまま内部のclaudeコマンドに渡す設計で、既存のワークフローを変えずに利用できます。

GitHub

リポジトリの統計情報

  • スター数: 28
  • フォーク数: 0
  • ウォッチャー数: 28
  • コミット数: 10
  • ファイル数: 3
  • メインの言語: Shell

主な特徴

  • DockerコンテナでClaude CLIを実行し、ホスト設定・認証を持続化
  • シンプルなインストール(curl | bash)で~/.local/binにコマンドを配置
  • コマンド引数を透過的にclaudeへ渡すラッパー設計
  • 依存はDockerのみで、環境汚染を防止

技術的なポイント

claude-dockerは非常に小さなシェルスクリプト群で構成され、Dockerを使ってCLIバイナリ/実行環境をコンテナへ閉じ込める設計です。重要な実装方針は「ホストの設定と認証情報をコンテナにマウントして持続化する」ことにあり、これによりユーザーはホスト上の設定(例: ~/.config/claude や認証トークン格納ディレクトリなど)をそのまま再利用できます。ラッパーは通常、docker run に対して -v (ボリュームマウント)、—user(UID/GIDの透過)、-e(環境変数継承)、および —rm/—init といった一般的なフラグを付けて起動し、標準入力・出力や端末のTTYを透過させることで対話的利用をサポートします。install.shは単一のインストール用スクリプトで、ユーザーのホームディレクトリ下の ~/.local/bin に実行ファイルを配置し、再実行で更新が可能なためメンテナンスが簡単です。設計上の利点は、ホストに依存するライブラリやパッケージをインストールせずにCLIを使用できる点、監査が容易な小さなコードベース、そしてDockerが提供する分離性による環境の再現性です。一方で、Dockerデーモンへのアクセスやホストのファイルをマウントするための権限が必要であり、認証情報をコンテナに渡す際の管理や、ネットワーク設定(プロキシやファイアウォール)への配慮が求められます。また、セキュリティ面ではホストのシークレットをそのままマウントするため、アクセス制御と信頼できるイメージの利用が重要になります。

プロジェクトの構成

主要なファイルとディレクトリ:

  • README.md: file
  • claude-docker: file
  • install.sh: file

まとめ

Dockerで安全かつ手軽にClaude CLIを使える実用的なラッパーです(50字程度)。

リポジトリ情報:

READMEの抜粋:

claude-docker

Run Claude Code inside a Docker container with your host settings and persistent authentication.

Install

curl -fsSL https://raw.githubusercontent.com/hiragram/claude-docker/main/install.sh | bash

This installs the claude-docker command to ~/.local/bin/.

To update, run the same command again.

Usage

claude-docker

All arguments are passed through to claude:

claude-docker --dangerou...