claude --dangerously-skip-permissions
を実行して、無人操作のための権限プロンプトをバイパスできます。
devcontainerは実質的な保護を提供しますが、すべての攻撃に対して完全に免疫のあるシステムは存在しません。
--dangerously-skip-permissions
で実行された場合、devcontainerは悪意のあるプロジェクトがClaude Codeの認証情報を含むdevcontainer内でアクセス可能なものを流出させることを防ぐことはできません。
信頼できるリポジトリで開発する場合にのみdevcontainerを使用することをお勧めします。
常に適切なセキュリティプラクティスを維持し、Claudeの活動を監視してください。主な機能
- 本番対応のNode.js: 必須の開発依存関係を含むNode.js 20上に構築
- 設計によるセキュリティ: 必要なサービスのみへのネットワークアクセスを制限するカスタムファイアウォール
- 開発者フレンドリーなツール: git、生産性向上機能付きZSH、fzfなどを含む
- シームレスなVS Code統合: 事前設定された拡張機能と最適化された設定
- セッション永続化: コンテナの再起動間でコマンド履歴と設定を保持
- どこでも動作: macOS、Windows、Linuxの開発環境と互換性
4ステップで始める
- VS CodeとRemote - Containers拡張機能をインストール
- Claude Codeリファレンス実装リポジトリをクローン
- VS Codeでリポジトリを開く
- プロンプトが表示されたら、「Reopen in Container」をクリック(またはコマンドパレットを使用:Cmd+Shift+P → “Remote-Containers: Reopen in Container”)
設定の詳細
devcontainerセットアップは3つの主要コンポーネントで構成されています:- devcontainer.json: コンテナ設定、拡張機能、ボリュームマウントを制御
- Dockerfile: コンテナイメージとインストールされたツールを定義
- init-firewall.sh: ネットワークセキュリティルールを確立
セキュリティ機能
コンテナは、ファイアウォール設定による多層セキュリティアプローチを実装しています:- 精密なアクセス制御: ホワイトリストに登録されたドメインのみ(npmレジストリ、GitHub、Anthropic APIなど)への送信接続を制限
- 許可された送信接続: ファイアウォールは送信DNSおよびSSH接続を許可
- デフォルト拒否ポリシー: その他すべての外部ネットワークアクセスをブロック
- 起動時検証: コンテナ初期化時にファイアウォールルールを検証
- 分離: メインシステムから分離された安全な開発環境を作成
カスタマイズオプション
devcontainer設定は、ニーズに適応できるよう設計されています:- ワークフローに基づいてVS Code拡張機能を追加または削除
- 異なるハードウェア環境に対するリソース割り当ての変更
- ネットワークアクセス権限の調整
- シェル設定と開発者ツールのカスタマイズ