Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
2025-07-27 Dev Containerで安全に Claude Codeを使う
Search
Naka Masato
July 26, 2025
Technology
0
97
2025-07-27 Dev Containerで安全に Claude Codeを使う
Dev Containerの導入方法や初めて使うときの引っかかりやすいポイントについて紹介します。
Naka Masato
July 26, 2025
Tweet
Share
More Decks by Naka Masato
See All by Naka Masato
2025-10-25 AIコーディングで開発した業務報告書自動生成アプリ
nakamasato
0
40
2025-01-26 Platform EngineeringがあればSREはいらない!? 新時代のSREに求められる役割とは@SREKaigi 2025
nakamasato
0
58
2025-01-25 Devin.aiを使ってみた使用感@機械学習社会実装勉強会第43回
nakamasato
0
490
2024-07-11 Mercari Hallo 立ち上げ時のSRE
nakamasato
2
610
2024-07-03 Eliminating toil with LLM
nakamasato
1
250
2024-05-25LangChain Agentの仕組み@機械学習社会実装勉強会第35回
nakamasato
1
340
2022-06-18 Ray Trainの紹介@機械学習の社会実装勉強会第12回
nakamasato
0
240
Ray Serve@機械学習の社会実装勉強会第11回
nakamasato
0
670
2022-04-29 Ray紹介@機械学習の社会実装勉強会
nakamasato
0
300
Other Decks in Technology
See All in Technology
生成AI時代のPythonセキュリティとガバナンス
abenben
0
150
SRE × マネジメントレイヤーが挑戦した組織・会社のオブザーバビリティ改革 ― ビジネス価値と信頼性を両立するリアルな挑戦
coconala_engineer
0
290
プロファイルとAIエージェントによる効率的なデバッグ / Effective debugging with profiler and AI assistant
ymotongpoo
1
490
だいたい分かった気になる 『SREの知識地図』 / introduction-to-sre-knowledge-map-book
katsuhisa91
PRO
3
1.5k
会社を支える Pythonという言語戦略 ~なぜPythonを主要言語にしているのか?~
curekoshimizu
4
890
re:Invent 2025の見どころと便利アイテムをご紹介 / Highlights and Useful Items for re:Invent 2025
yuj1osm
0
300
What's new in OpenShift 4.20
redhatlivestreaming
0
330
AWS re:Invent 2025事前勉強会資料 / AWS re:Invent 2025 pre study meetup
kinunori
0
750
【SORACOM UG Explorer 2025】さらなる10年へ ~ SORACOM MVC 発表
soracom
PRO
0
170
NLPコロキウム20251022_超効率化への挑戦: LLM 1bit量子化のロードマップ
yumaichikawa
3
550
プレイドのユニークな技術とインターンのリアル
plaidtech
PRO
1
470
Azure Well-Architected Framework入門
tomokusaba
1
140
Featured
See All Featured
Writing Fast Ruby
sferik
630
62k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
22k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.2k
A designer walks into a library…
pauljervisheath
209
24k
Balancing Empowerment & Direction
lara
5
700
Side Projects
sachag
455
43k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Code Reviewing Like a Champion
maltzj
526
40k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Rails Girls Zürich Keynote
gr2m
95
14k
KATA
mclloyd
PRO
32
15k
Speed Design
sergeychernyshev
32
1.2k
Transcript
Dev Container で安全に Claude Code を使う 技術的な開発環境の セキュリティ強化 naka (X:
@gymnstcs, GitHub: nakamasato) 2025 年7 月27 日 1 / 19
アジェンダ 1. 背景と課題 2. Dev Container の導入方法 3. 初めて使うときに引っかかるポイント 4.
デモ 2 / 19
背景:深刻な事故事例 Cursor YOLO モードのリスク "Cursor YOLO deleted everything in my
computer!" Reddit 投稿 潜在リスク AI がホストファイル全体にアクセス 予期しない削除や変更 完全なデータ損失 3 / 19
Dev Container が必要な理由 Vibe Coding 普及の課題 --dangerously-skip-permissions による予期せぬセキュリティリスク ホスト全体への無制限アクセス セキュリティ
vs 開発効率のジレンマ Dev Container による解決 コンテナによる隔離された開発環境 IDE との連携により今までと同じ開発体験を提供 チーム開発でも使える共通の設定 4 / 19
Dev Container とは VS Code 開発コンテナ Docker 上の開発環境 プロジェクト固有の設定 環境の完全な再現性
参考:VS Code 公式ドキュメント 5 / 19
導入の流れ 1. 拡張機能をインストール VS Code 拡張機能から「Dev Containers 」を検 索・追加 2.
設定ファイルを作成 .devcontainer/devcontainer.json を追加 3. コンテナで開く コマンドパレット → Reopen in Container 6 / 19
導入方法:基本設定 .devcontainer/devcontainer.json { "name": "Python Devcontainer", "image": "mcr.microsoft.com/devcontainers/python:3.12", "features": {
"ghcr.io/devcontainers/features/github-cli:1": {}, "ghcr.io/anthropics/devcontainer-features/claude-code:1.0": {} }, "remoteUser": "vscode" } 7 / 19
コンテナ設定パターン1 :既存イメージ 最も簡単な方法 { "name": "Python Development", "image": "mcr.microsoft.com/devcontainers/python:3.12" }
メリット 設定が簡単 すぐに使い始められる Microsoft 提供の安定したイメージ 8 / 19
コンテナ設定パターン2 :カスタムDockerfile 細かくカスタマイズしたい場合 { "name": "Custom Environment", "build": { "dockerfile":
"Dockerfile", "context": "." } } FROM mcr.microsoft.com/devcontainers/base RUN apt-get update && apt-get install -y \ python3 nodejs npm 必要なCLI をインストール ディレクトリの作成・権限付与 etc. 9 / 19
コンテナ設定パターン3 :Docker Compose 複数コンテナ(DB 等)が必要な場合 { "name": "Full Stack App",
"dockerComposeFile": "docker-compose.yml", "service": "app", "workspaceFolder": "/workspace" } 用途 データベース連携 マイクロサービス開発 10 / 19
必要CLI ツールの設定 基本セット git: バージョン管理 gh: GitHub CLI claude: Claude
Code tig, jq: 便利ツール 設定方法 Features で一括指定 Dockerfile でカスタム 11 / 19
Features を使った拡張 Claude を含む各種ツールの追加 { "features": { "ghcr.io/anthropics/devcontainer-features/claude-code:1.0": {}, "ghcr.io/devcontainers/features/github-cli:1":
{}, "ghcr.io/devcontainers/features/git:1": {} } } その他便利なFeatures pre-commit: コード品質チェック docker-in-docker: Docker 操作 12 / 19
引っかかりポイント1 :gh command 認証 問題 毎回手動ログインが面倒 解決策:GH_TOKEN 環境変数の設定 { "runArgs":
["--env-file", ".devcontainer/.env.devcontainer"], "initializeCommand": "echo \"GH_TOKEN=$(gh auth token)\" > .devcontainer/.env.devcontainer" } # .gitignore に追加 .devcontainer/.env.devcontainer 13 / 19
引っかかりポイント2 :Claude Code 設定 問題 Claude Code の設定が毎回消える ユーザー認証が毎回必須になる 解決策:設定ディレクトリの永続化
+ CLAUDE_CONFIG_DIR の設定 { "containerEnv": { "CLAUDE_CONFIG_DIR": "/home/vscode/.claude" }, "mounts": [ "source=claude-config,target=/home/vscode/.config/claude,type=volume" ※ /home/vscode/ 部分はcontainerUser によって書き換え 14 / 19
引っかかりポイント3 :root 権限エラー 問題 --dangerously-skip-permissions cannot be used with root/sudo
privileges for security reasons 解決策:非root ユーザー { "remoteUser": "vscode", "containerUser": "vscode" } ※ --dangerously-skip-permissions は非root ユーザーが必要 15 / 19
まとめ セキュリティ向上 ホストから完全隔離 プロジェクト境界明確化 YOLO モードもリスクを抑えて利用可 開発効率向上 チーム共通環境 一度設定すれば使い回し可能 16
/ 19
ベストプラクティス 段階的導入 1. 基本イメージから開始 2. 必要ツールを段階追加 3. チーム全体で設定共有 セキュリティ強化 Claude
Code のDeny ルール整備 ネットワークの制限 参考:Anthropic 公式例 17 / 19
デモ デモ内容 Dev Container 設定作成 VS Code でコンテナ起動 Claude Code
安全実行 ファイルアクセス制限確認 18 / 19
ご清聴ありがとうございました Dev Container でよりセキュアな 爆速開発環境をつくりましょう! 参考:Qiita 記事 19 / 19