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
220
はんなり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
340
Other Decks in Technology
See All in Technology
インシデントレスポンスのライフサイクルを廻すポイントってなに / Pinpoints of Incidentresponse Lifecycle for Operation
sakaitakeshi
0
300
レガシーをぶっ壊せ。AEONで始めるDevRelの話 / Qiita Night 2024-2-22
aeonpeople
3
140
Autonomous Database Cloud 技術詳細 / adb-s_technical_detail_jp
oracle4engineer
PRO
13
35k
NLP2024 参加報告LT ~RAGの生成評価と懇親戦略~ / nlp2024_attendee_presentation_LT_masuda
taro_masuda
1
190
Data and AI Governance: Existing Challenges and Emerging Trends
scotthsieh825
0
150
反実仮想機械学習とは何か
usaito
PRO
6
1.7k
SIEMを用いて、セキュリティログ分析の可視化と分析を実現し、PDCAサイクルを回してみた
coconala_engineer
0
200
PHPカンファレンス小田原2024
ysknsid25
2
660
SREとその組織類型
tatsuo48
8
1.5k
Amplify Gen2を 拡張してみよう JAWS-UG北陸新幹線 ( 福井開催 ) 2024-04-06/Let's extend Amplify Gen2
fossamagna
0
280
AWS を使う上で知っておきたいオンプレミス知識/aws-on-premise-essentials
emiki
1
4.2k
Discord とビルダー&チャットボットの使い方 / How to use Discord and Builder & Chatbots
ks91
PRO
0
130
Featured
See All Featured
Design by the Numbers
sachag
274
18k
[RailsConf 2023] Rails as a piece of cake
palkan
22
3.9k
Raft: Consensus for Rubyists
vanstee
131
6.2k
Infographics Made Easy
chrislema
237
18k
Intergalactic Javascript Robots from Outer Space
tanoku
266
26k
Designing with Data
zakiwarfel
95
4.8k
It's Worth the Effort
3n
180
27k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
243
20k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
185
16k
Embracing the Ebb and Flow
colly
78
4.1k
Scaling GitHub
holman
457
140k
Product Roadmaps are Hard
iamctodd
43
9.7k
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(クバネティス)
“コンテナ化したアプリケーションのデプロイ、スケーリング、および管理” ⇒最近この勢⼒が⼤きく…ちょっと勉強してみるか…
ご清聴ありがとうございました。 (質疑応答)