モチベ
-
- 初心者としてDockerで遊んでみたい
- libraryなどの心配不要なので便利らしい
やるぞ
1、Homebrew で Docker install
brew intall docker
brew cask install docker
brew-caskとはは こちらの記事 参照
要はmacのapplicationとしてのdockerをinstallする
2、Docker Desktop 起動
open /Applications/Docker.app
3、Jupyter Notebook のイメージを選ぶ
docker pull jupyter/scipy-notebook
4、Jupyter Notebookを起動する
docker run -it -p 8888:8888 --rm --name jupyter jupyter/scipy-notebook
# argsの意味は docker run --helpで調べられる
# -it / -rm はよほどのことがなければつける
5、おまけ:やったことを保存したい
dockerはstatelessなため、container停止すると、作成中のnotebookのデータが消えてしまう。
データの保存には二方法考えられる。
① .ipynb ファイルをダウンロードする
- notebook 動作中だとダウンロードできないので、notebook の前方のボックスをクリックして、shutdownをクリック
② docker container 起動時にfolderをマウントする
container内部と外部でファイルを共有する手段として、フォルダやファイルをマウントすることがある。
まずコマンドはこちら
docker run -it -p 8888:8888 -v /Users/watashi/my/jupyter:/home/jovyan/work --rm --name jupyter jupyter/scipy-notebook
-v /Users/watashi/my/jupyter:/home/jovyan/work
このargの意味は、PC上の/Users/watashi/my/jupyterというフォルダを、container内の/home/jovyan/workにマウントすること。
container内の/home/jovyan/workがPC上の/Users/watashi/my/jupyterの一つのエイリアスと考えるとわかりやすいかもしれない?