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
はんなりpython_Docker初心者がVscodeまで_20191219
Search
vinorthman
December 23, 2019
Technology
0
260
はんなりpython_Docker初心者がVscodeまで_20191219
はんなりpython_Docker初心者がVscodeまで_20191219
vinorthman
December 23, 2019
Tweet
Share
More Decks by vinorthman
See All by vinorthman
Pythonで声・音を扱ってみた(pyaudio,GCP)
vinorthman
0
480
Other Decks in Technology
See All in Technology
CursorによるPMO業務の代替 / Automating PMO Tasks with Cursor
motoyoshi_kakaku
0
160
AIエージェント最前線! Amazon Bedrock、Amazon Q、そしてMCPを使いこなそう
minorun365
PRO
15
5.3k
第9回情シス転職ミートアップ_テックタッチ株式会社
forester3003
0
250
250627 関西Ruby会議08 前夜祭 RejectKaigi「DJ on Ruby Ver.0.1」
msykd
PRO
2
320
生成AI時代の開発組織・技術・プロセス 〜 ログラスの挑戦と考察 〜
itohiro73
1
270
Абьюзим random_bytes(). Фёдор Кулаков, разработчик Lamoda Tech
lamodatech
0
350
ドメイン特化なCLIPモデルとデータセットの紹介
tattaka
0
130
エンジニア向け技術スタック情報
kauche
1
270
PostgreSQL 18 cancel request key長の変更とRailsへの関連
yahonda
0
120
GeminiとNotebookLMによる金融実務の業務革新
abenben
0
230
How Community Opened Global Doors
hiroramos4
PRO
1
120
"サービスチーム" での技術選定 / Making Technology Decisions for the Service Team
kaminashi
1
150
Featured
See All Featured
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
181
53k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
670
Music & Morning Musume
bryan
46
6.6k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
48
2.8k
Adopting Sorbet at Scale
ufuk
77
9.4k
A designer walks into a library…
pauljervisheath
207
24k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
The Cult of Friendly URLs
andyhume
79
6.5k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Transcript
Docker初⼼者が、 DockerContainer+VsCodeで Pythonの開発環境作るまで . @vinorthman 2019/12/20 はんなりPythonの会 #23 LT会
・01.⾃⼰紹介 ・02.はじめに”おことわり” ・03.なぜこのテーマでLT会出るのか ・04.いつも話題のPython開発環境 ・05.今時Dockerっていう環境作りに便利な仕組みあるんじゃないの︖ ・06.新たなエディタの登場(VScode)と次の展開 ・07.VScodeのオプションで画期的なものが︕ …dockerの管理がGUIで ・08.おさらい…Dockerのライフサイクル …まずは、⾃分で流れを描いて理解してみた
・09.VScodeとDockerのライフサイクルの関係 ・10.具体的にVScodeからDockerContainerにattachしてみよう! ・最後に
・01.⾃⼰紹介 @vinorthman : ⾼橋 びわ湖のあるところ北の⽅在住⼤阪通勤 ・欧州鉄道好き(特に実際に乗⾞したSBB,Rhb,DB) ・カミさんと美術館巡り(関⻄&上野あたり) ・アナログシンセ周りなどなど ・⾷べ歩きも多し。
・02.はじめに”おことわり” これからお話する事は、私@vinorthmanが、遠回りしながら現在のpython開発環境 にたどりついた物語です;;; もっとよいやり⽅があると思います。 短い時間なので、⼗分な説明できないと思います。 今⽇は、こんなやり⽅あるんだなーと感じていただき、 少しでも興味持たれた⽅は、もっと詳しく解説している、 多くの技術ブログ等で確認していただきたく。
・03.なぜこのテーマでLT会出るのか ① はんなりPython 相談会などなど、いつも開発環境が話題に︕ ② 2019年⾃分のpythonがらみニュース ・ハード︓エッジPC(GPU搭載)+Pythonで画像認識(はんなりPython #20発表会にて) ・ソフト︓コレ →こんな開発⼿法あったのか、純粋に驚き
⾃分のMacやPCの環境汚さずに、(これ重要) ⾊々なPythonを含む開発&実⾏環境 とっかえひっかえ試せるやん︕(これも重要)
・04.いつも話題のPython開発環境 みなさん、Python環境どうしていますか︖ 私、これまでは、 ・ローカル (pip,conda) + エディタ ・VM(VM player,virtulbox) +
OS(ubuntu,debian) + (pip,conda)+エディタ が⼀般的でした。 (元々サーバ管理者もやっていたのでVmwareで仮想組むのがあたりまえという考え。) 他にもcondaで仮想環境作りが…いちいちコマンド打ち切替⾯倒;; pip,conda併⽤問題、ローカルが汚くなっていく、掃除に⼿間︕(環境変数やら)
・05.今時Dockerっていう環境作りに便利な仕組みあるんじゃないの︖ なぜ最近までDocker利⽤していなかったか︖ (あくまで個⼈的な事ですが…) 約2年前、 最初Dockerに触れたのが、ラズパイに代表されるarmPCでIoT試⾏… 当時Docker概念もあまり理解していなかった ⼿順マニュアル通りに配布システムのdocker imageをセットアップしたが… 当時の⾮⼒なarmPCでは、ものすごくレスポンス悪かった;;;いやな思い出。 (それから⾷わず嫌い(笑)
…という、くだらない理由;;
・06.新たなエディタの登場(VScode)と次の展開 VScodeの登場︕ +様々なオプション(Extension)が開発されるのが特徴 ・python +jupyter … jupyterがブラウザじゃなくてvscodeで ・ドキュメント markdown(Latex⾵) …textで、数式や表など
直ぐにお気に⼊りのエディタに。 ただ快適になってきたが… python⾃体の環境が…(pip,conda混在問題, 新verお試し 環境切替⾯倒 などなど) この部分は、何も変われてないやん︔︔︔︔
・07.VScodeのオプションで画期的なものが︕ …dockerの管理がGUIで そんな中、VScodeの様々なオプション(Extension)にDocker管理が登場︕ dockerの管理がGUIで︕ …この頃には、DockerHUBに⾊々なイメージが存在する事を認識していた。 →⼀度Dockerのimage,containerの概念と流れを描いて理解してみるか……
・08.おさらい…Dockerのライフサイクル …まずは、⾃分で流れを描いて理解してみた ローカルPC Python 3.8 Image群 Docker HUB tensorf low
PHP ubuntu pull Python 3.8 tensorf low Image群 破棄 Image rm create Python 3.8 A Python 3.8 B Container群 (Stop状態) Python 3.8 A Container群 (実⾏状態) start 破棄 rm stop commit Python3.8 B改変 ★すごく簡単に解釈すると… ①DockerHUBから使えそうな image をpull ②imageからcontainerをcreate ③その時利⽤したいcontaner環 境をstartさせて、 ④その環境を利⽤できればよい ★例えば、新しいPython3.8試 したいな〜なら、 これにattachすればよい。 Vscode上でattachして、コード &実⾏できればもっとよい︕
・ 09.Vscode+オプションとDockerのライフサイクルの関係(1/2) ローカルPC Python 3.8 tensorf low Image群 破棄 Image
rm create Python 3.8 A Python 3.8 B Container群 (Stop状態) Python 3.8 A Container群 (実⾏状態) start 破棄 rm stop commit Python3.8 B改変 ①Doker Image管理 ②Doker Container管理 (実⾏、停⽌、ポート) ③Doker Container接続 (Attach)
・ 09.Vscode+オプションとDockerのライフサイクルの関係(2/2) ①Doker Image管理 ②Doker Container管理 (実⾏、停⽌、ポート)
・ 10.具体的にVScodeからDockerContainerにattachしてみよう! (1/2) ②Doker Container管理 (実⾏、停⽌、ポート) ③Doker Container接続 (Attach)
・ 10.具体的にVScodeからDockerContainerにattachしてみよう! (2/2) コンテナにアタッチし たVscodeが新たな Windowとして開く Python 3.8 64 bit
Python 3.8 A Containerへ Attach
・最後に …今後 ・様々な環境試してみたい ⇒ pytorch などAI系 画像(Opencvなど)系 もちろん新しいpythonも ・VScodeの様々なオプション(Extension)にKubernetesも︕ Kubernetes(クバネティス)
“コンテナ化したアプリケーションのデプロイ、スケーリング、および管理” ⇒最近この勢⼒が⼤きく…ちょっと勉強してみるか…
ご清聴ありがとうございました。 (質疑応答)