はじめに
いつも心は虹色に! nikkieです。
8/25はmokupyにお邪魔して登壇準備を進めてきました。
勉強会の概要
主にPythonに関するやりたいことを各自持って来て、進めていく感じのゆるい会です。 もくもく開発をして情報共有したり、交流を深めることができればと思っています。 是非お気軽にご参加ください。(Python初心者の方でも大歓迎です!)
ゆるさが持ち味のもくもく会です。
取り組んだこと:Dockerトーク準備
10分枠の登壇の機会をいただいたので、Pythonista向けにDockerを使い出す話をします。
みんなのPython勉強会#38 - connpass
Dockerを独学したところ、環境構築の大変さがだいぶ和らぐという印象です。
PythonはWeb開発も機械学習もできますが、分野をまたぐときに環境構築が発生します。
ここをDockerで省力化できますよと共有する予定です。
複数のPython環境を用意する
docker run
で簡単にできます。
$ docker run -i -t --rm python:3.6 bash root@d12b897d5783:/# python -V Python 3.6.6 root@d12b897d5783:/# exit $ docker run -i -t --rm python:3.7 bash Unable to find image 'python:3.7' locally 3.7: Pulling from library/python : Status: Downloaded newer image for python:3.7 root@d62346cb3a11:/# python -V Python 3.7.0 root@d62346cb3a11:/# exit $
docker run -v
でフォルダを共有する
version.py
from platform import python_version if __name__ == '__main__': print(python_version())
※前提: カレントディレクトリからは./first/version.py
という配置です。
$ docker run -i -t -v "$(pwd)"/first:/home --rm python:3.6 bash root@fc43deb1393b:/# cd home/ root@fc43deb1393b:/home# ls -l total 4 -rw-r--r-- 1 root root 91 Aug 25 02:40 version.py root@fc43deb1393b:/home# python version.py 3.6.6 root@fc43deb1393b:/home# exit $ docker run -i -t -v "$(pwd)"/first:/home --rm python:3.7 bash root@9e518e76f970:/# cd home/ root@9e518e76f970:/home# ls -l total 4 -rw-r--r-- 1 root root 93 Aug 25 02:42 version.py root@9e518e76f970:/home# python version.py 3.7.0 root@9e518e76f970:/home# exit $
"$(pwd)"
の仕組み
成果発表の時間で発表させていただき、気づいたのは2点。
- Dockerの説明、必要なところだけにしたつもりでも時間全然足りない。もっとやること絞らないと
- 先日のk8sハンズオンを参考に、テンプレートとなる
docker run
コマンドを用意して数パターン実行というのはどうだろう
読書会に向けて帰り道にpypro読んでの気づき
- 仮想環境にもよさはある。Dockerはデプロイ簡単にしてくれるのと、複雑な環境構築を簡略化してくれる役割で使うのがよさそう(仮想環境の代わりにDockerで統一というのはやりすぎと認識。銀の弾丸などないということですね)
成果発表から
だいぶ盛り上がりました。
- PowerBI × Pythonで形態素解析をしてみよう
- PowerBIでPythonが使えるようになったそうです。
- Beyond Interactive: Notebook Innovation at Netflix – Netflix TechBlog – Medium
- NetflixがJupyterを使い倒しているそうです。(データに関わる職種は全員使っているとか)
- nteractによって拡張されたJupyterのUIがすごかった。。
- plotlyもJupyterのグラフにカーソルをホバーさせると表示が変わり、すごいという印象。
- AtCoder Problemsを教えていただいたのですが、絶対中の人アニメ好きですね。
- Slackではこちらの本が話題でした。私も気になります!『エンジニアの知的生産術 ──効率的に学び、整理し、アウトプットする』
終わりに
想いを寄せているDockerの良さを伝えられるよう、引き続き準備して臨もうと思います。
参加者の皆さま、1日ありがとうございました。お疲れ様でした。