$30 off During Our Annual Pro Sale. View Details »
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
110
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
75
2025-01-26 Platform EngineeringがあればSREはいらない!? 新時代のSREに求められる役割とは@SREKaigi 2025
nakamasato
0
63
2025-01-25 Devin.aiを使ってみた使用感@機械学習社会実装勉強会第43回
nakamasato
0
500
2024-07-11 Mercari Hallo 立ち上げ時のSRE
nakamasato
2
610
2024-07-03 Eliminating toil with LLM
nakamasato
1
260
2024-05-25LangChain Agentの仕組み@機械学習社会実装勉強会第35回
nakamasato
1
350
2022-06-18 Ray Trainの紹介@機械学習の社会実装勉強会第12回
nakamasato
0
240
Ray Serve@機械学習の社会実装勉強会第11回
nakamasato
0
700
2022-04-29 Ray紹介@機械学習の社会実装勉強会
nakamasato
0
310
Other Decks in Technology
See All in Technology
21st ACRi Webinar - Univ of Tokyo Presentation Slide (Shinya Takamaeda)
nao_sumikawa
0
120
著者と読み解くAIエージェント現場導入の勘所 Lancers TechBook#2
smiyawaki0820
12
5.7k
知っていると得する!Movable Type 9 の新機能を徹底解説
masakah
0
260
Playwright x GitHub Actionsで実現する「レビューしやすい」E2Eテストレポート
kinosuke01
0
260
Oracle Cloud Infrastructure:2025年11月度サービス・アップデート
oracle4engineer
PRO
2
180
乗りこなせAI駆動開発の波
eltociear
1
660
Ryzen NPUにおけるAI Engineプログラミング
anjn
0
250
Uncertainty in the LLM era - Science, more than scale
gaelvaroquaux
0
730
AIと二人三脚で育てた、個人開発アプリグロース術
zozotech
PRO
0
610
AWS Bedrock AgentCoreで作る 1on1支援AIエージェント 〜Memory × Evaluationsによる実践開発〜
yusukeshimizu
4
300
直接メモリアクセス
koba789
0
270
EM歴1年10ヶ月のぼくがぶち当たった苦悩とこれからへ向けて
maaaato
0
250
Featured
See All Featured
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.3k
Designing for humans not robots
tammielis
254
26k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.3k
Producing Creativity
orderedlist
PRO
348
40k
Mobile First: as difficult as doing things right
swwweet
225
10k
How STYLIGHT went responsive
nonsquared
100
5.9k
Writing Fast Ruby
sferik
630
62k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Context Engineering - Making Every Token Count
addyosmani
9
490
Become a Pro
speakerdeck
PRO
30
5.7k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
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