Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Visual Studio Code Dev Containers ススメ Python編 -...
Search
ニフティ株式会社
PRO
March 21, 2024
Video
Resources
Programming
350
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Visual Studio Code Dev Containers ススメ Python編 - NIFTY Tech Talk #17
ニフティ株式会社
PRO
March 21, 2024
Video
Resources
超入門 ここから始める開発環境 - NIFTY Tech Talk #17
https://nifty.connpass.com/event/312139/
More Decks by ニフティ株式会社
See All by ニフティ株式会社
microCMS移行をいまならAIでどう進めるか - microCMS Meetup 2026
niftycorp
PRO
0
480
Embedded SREと共に達成した会員管理システムのAWS移行 - SRE NEXT 2026 ランチスポンサーセッション
niftycorp
PRO
1
4.1k
ニフティ株式会社 エンジニア向け Company Deck 2026年版
niftycorp
PRO
0
1.1k
「なぜそう決めたのか」を残し続ける仕組み ― Notion AI カスタムエージェント × Slack連携による設計判断の自動記録 - NIKKEI Tech Talk #47
niftycorp
PRO
0
360
CS教育のDX AIによる育成の効率化
niftycorp
PRO
0
420
AI 開発合宿を通して得た学び
niftycorp
PRO
0
420
なぜISPでオリジナルカードゲームを作ったのか?制作者と対談 - NIFTY Tech Talk #25
niftycorp
PRO
0
140
「なぜかネットが遅い」を“見える化”する 〜マイ ニフティが繋ぐサポートと暮らし〜 - NIKKEI Tech Talk #39
niftycorp
PRO
0
690
InnerSource Summit 2025 Three points that promoted innersource activities
niftycorp
PRO
0
360
Other Decks in Programming
See All in Programming
From 6 People Classroom Meetup to 100 People Regional Conference / FOSS4G Hiroshima 2026
furukawayasuto
0
210
アクセシビリティから考える情報設計
high_g_engineer
0
380
XHTMLが残したもの
yosuke_furukawa
PRO
2
810
ゲームコントローラやキーボードのファームウェアをSwiftで書く
kishikawakatsumi
1
240
AWS Step Functions 大規模並列の壁を越える / jaws-sonic-2026-niigata-step-functions
kasacchiful
PRO
1
480
Streamlitで実現する自然言語データアプリ開発
ayumu_yamaguchi
1
290
AGENTS.md Is Not Enough:Build Skills, Don't Download Them
lx_t
0
120
SREの越境 / SRE Collaboration
y0hgi
1
210
FreeBSDでZabbixを動かす
kenkino
0
300
wkhtmltopdfの次どうするか問題2026
willnet
1
850
モバイル交通系ICへのチャージ実例から考える、クロスプラットフォーム開発におけるiOS実機テスト設計とCI運用
yusuga
1
480
Omarchy Tokyo やると聞いて UMPC 買ってセットアップしてきた
mtsmfm
0
140
Featured
See All Featured
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
300
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.3k
The Cult of Friendly URLs
andyhume
79
7k
A better future with KSS
kneath
240
18k
Unsuck your backbone
ammeep
672
58k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
500
Become a Pro
speakerdeck
PRO
31
6.3k
Fashionably flexible responsive web design (full day workshop)
malarkey
409
67k
Leo the Paperboy
mayatellez
10
2.3k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.8k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
500
YesSQL, Process and Tooling at Scale
rocio
174
15k
Transcript
VisualStudio Code Dev Containersの ススメ Python編 ニフティ株式会社 三浦 拓実
三浦 拓実 オプションサービス開発チームのリーダー兼スクラムマスター 担当サービスは常時安全セキュリティ24(2004年開始)、@nifty VPN Wi-Fi(2018年開始)、@nifty ADクリーナー(2023年開始)など 新規サービス開発の要求定義から設計、実装、運用まで幅広く 手がけています。 趣味は音楽鑑賞やファッションなど。
突発的に旅行に行きがち。
今からPython始める人 どう始めるのがいい?
まずPythonを手元のPCに インストール...しない
PythonをPCにインストールしない理由 • 手元の(ローカル)PCへのインストールは面倒が多い ◦ Python自体のバージョンがひとつに固定されてしまう ◦ インストールするライブラリも固定される ▪ pyenv、venv、pipenvといったツールで解決できるが管理が結構煩雑 •
他のメンバーと開発する時に、PCの細かい差分でトラブルが起こる ◦ 他にインストールされているソフト、Windows / Macの設定、ネットワークの状況など • だったら同じ設定のローカルPC増やせばいいだろ! ◦ PCをプログラムごとに用意できる大富豪ならそうしてもいいが、現実的ではない プログラムを書いて勉強するならPython自体の管理の手間はなるべく減らして、 実際にプログラムを書く時間を増やすべき。
偉い人は考えた ローカルPCの中に仮想でPCを立ち 上げれば、プログラムごとにいくら でも環境を作れるのでは......?
ローカルPCの中に仮想環境を作る あなたのローカルPC Pythonで データ分析 やるための 環境 Pythonで WEBアプリ 作るための 環境
Pythonで 数値計算 するための 環境 + ↑仮想のコンテナ環境を立ち上げ↑
ローカルPCに必要なソフト • Docker ◦ コンテナ型仮想環境を作成・管理するソフト ◦ 公式Webサイトからインストールできる ◦ 個人利用なら無償、企業で利用する場合は条件次第で有償 •
VisualStudio Code(VS Code) ◦ マイクロソフトが管理するオープンソースのエディタ ◦ 公式Webサイトからインストールできる ◦ さまざまな拡張機能が作られていて、好みにカスタムできる • Dev Containers ◦ VS Codeの拡張機能、VSCode上でインストールする ◦ ローカルPCに立ち上がったコンテナに接続してコンテナを VSCodeから操作できるようになる
ファイル構成と中身 { "name": "Python DevContainer Practice", "dockerComposeFile": [ "docker-compose.yml" ],
"service": "app", "workspaceFolder": "/app" } version: "3" services: app: build: context: .. dockerfile: Dockerfile volumes: - type: bind source: .. target: /app hostname: app command: sleep infinity FROM python:latest # 任意のバージョンを指定 WORKDIR /app COPY . . RUN apt update && \ pip install --upgrade pip 最小構成はこんな感じ
立ち上げた後の画面 コンテナのOSは主にLinuxだが、 モダンなエディターが使える ターミナルからコマンドを叩け るので、pythonコマンドで書 いたプログラムの実行もできる 拡張機能でエディターに 好みの機能を追加可能
メリット / デメリット • ひとつの環境の構築に集中で きる ◦ トラブルが減り開発に集中で きる! •
環境がコード化されており、 他のPCでもすぐに環境が再現 できる ◦ 手順書や暗記は不要 • 作った環境と同じコンテナを リリースできる ◦ AWS, Google Cloud, Azure… • 凝ったことをしようとすると 様々な知識が求められる ◦ Linux、ネットワークなど ◦ でもこれは勉強すればいい • PCにある程度スペックが求め られる ◦ メモリは16GB欲しい ◦ お金で解決できる →デメリット、ないじゃん...
1日→10分 Dev Containersで短縮できた環境構築1回あたりの時間です Dev Containersで開発環境構築を短縮して環境を揃えることは 特に複数人のチーム開発で大きな威力を発揮します 開発環境の分離はトラブルを減らし、開発時間を伸ばしてくれます イカした開発環境を手に入れましょう!