用 docker 来搭建独立的 jupyter 环境

2019-03-02  本文已影响0人  卧雪听月

近期接触docker ,感觉容器真是好东西,需要什么开发环境就搞一个对应镜像,docker运行起来就可以用了,简单快捷,不让自己的本子变成一个有各种开发环境的大杂烩。搭建独立jupyter诉求主要是想着一来可以尝试用jupyter来作为自己的一个python 数据分析work space, 顺便当做笔记本不错。先是探索修改了sellpy/python3-jupyter-sklearn镜像,探索之后自己在docker hub 提交了修改过的镜像09star/python3-jupyter-sklearn-pro

本文涉及内容 :

  1. 修改docker镜像

  2. docker镜像 -p 端口映射、-v 持久化 等使用

  3. docker镜像 push回docker hub

直接使用:

不看后文,直接使用,请运行:


docker pull 09star/python3-jupyter-sklearn-pro

docker run -p 8888:8888 09star/python3-jupyter-sklearn-pro ./run.sh

详细过程:

开搞,默认已经安装了docker。

好吧这里有点儿挂羊头卖狗肉了,发现我可能最开始search镜像的时候,关键词不是jupyter而是sklearn好奇怪的脑回路。

直接 docker search sklearn 可以看到这个镜像:

sellpy/python3-jupyter-sklearn

下载吧


docker pull sellpy/python3-jupyter-sklearn

docker run sellpy/python3-jupyter-sklearn ./run.sh

直接运行镜像会报错

[C 11:24:06.450 NotebookApp] Running as root is not recommended. Use --allow-root to bypass.

需要修改一下jupyter默认配置,进入镜像吧


docker run -it sellpy/python3-jupyter-sklearn bash 

运行


jupyter notebook --generate-config

之后在配置文件里修改 --allow-root 配置项 为True即可。为了可以修改生成的配置文件,安装一下vim


apt-get install vim

之后我把修改过的images 提交


docker commit 老容器名字id  新的名字(这里我用:python3-jupyter-sklearn-pro)

好了本地提交完之后,运行一下试试吧


docker  run -p 8888:8888 python3-jupyter-sklearn-pro ./run.sh

访问 localhost:8888 应该能看到熟悉的 jupyter 界面啦!

进一步,1 想把文件持久化 -v 指定一个目录 2 可以以后台运行的方式 服务 -d


docker  run -d  -p 8888:8888  -v 主机目录:镜像内部目录 python3-jupyter-sklearn-pro ./run.sh

这样就可以将jupyter的笔记本都持久化到主机目录,方便使用,同时后台运行。需要看日志的话:


docker logs -f 运行镜像ID(如: 012c7472ebd94b5e0a4d0112a3ea3efdff599cc941d23d9cfb668b1f67317e7f)

最后可以将自己修改的镜像push 回docker hub分享出去。


docker push 09star/python3-jupyter-sklearn-pro

上一篇下一篇

猜你喜欢

热点阅读