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
270
はんなり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
500
Other Decks in Technology
See All in Technology
2025年になってもまだMySQLが好き
yoku0825
8
4.7k
新アイテムをどう使っていくか?みんなであーだこーだ言ってみよう / 20250911-rpi-jam-tokyo
akkiesoft
0
250
大「個人開発サービス」時代に僕たちはどう生きるか
sotarok
20
9.9k
5分でカオスエンジニアリングを分かった気になろう
pandayumi
0
240
TS-S205_昨年対比2倍以上の機能追加を実現するデータ基盤プロジェクトでのAI活用について
kaz3284
1
120
生成AI時代のデータ基盤設計〜ペースレイヤリングで実現する高速開発と持続性〜 / Levtech Meetup_Session_2
sansan_randd
1
150
ガチな登山用デバイスからこんにちは
halka
1
240
Function Body Macros で、SwiftUI の View に Accessibility Identifier を自動付与する/Function Body Macros: Autogenerate accessibility identifiers for SwiftUI Views
miichan
2
180
Snowflakeの生成AI機能を活用したデータ分析アプリの作成 〜Cortex AnalystとCortex Searchの活用とStreamlitアプリでの利用〜
nayuts
1
480
2つのフロントエンドと状態管理
mixi_engineers
PRO
3
100
COVESA VSSによる車両データモデルの標準化とAWS IoT FleetWiseの活用
osawa
1
280
Rustから学ぶ 非同期処理の仕組み
skanehira
1
130
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
920
Mobile First: as difficult as doing things right
swwweet
224
9.9k
Docker and Python
trallard
45
3.6k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
GraphQLとの向き合い方2022年版
quramy
49
14k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Done Done
chrislema
185
16k
Six Lessons from altMBA
skipperchong
28
4k
Designing Experiences People Love
moore
142
24k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.6k
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(クバネティス)
“コンテナ化したアプリケーションのデプロイ、スケーリング、および管理” ⇒最近この勢⼒が⼤きく…ちょっと勉強してみるか…
ご清聴ありがとうございました。 (質疑応答)