文章目录
在 机器学习平台系列(五) - 初探 Jupyter Lab 一文中介绍了如何在 非root 用户下安装配置 Jupyter Lab,本节介绍如何制作 Jupyter Lab 在 CentOS7 下的 Docker 镜像。
1.环境版本
- VMWare 版本:VMware-workstation-full-15.5.0-14665864
- 虚拟机镜像版本:CentOS-7-x86_64-DVD-1810.iso
- Anaconda 版本:Anaconda3-5.3.0-Linux-x86_64.sh
- Docker 版本:docker-ce-18.09.1
- Jupyter Lab 版本:0.35.4
2.准备工作
2.1 安装 Docker
# 安装 Docker 的 yum 源
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
# 安装 Docker
yum install -y docker-ce-18.09.1
# 设置开机启动
systemctl enable docker
# 启动 Docker
systemctl start docker
2.2.上传 Anaconda3
# 在 /root/ 下新建 data 目录
# 将 Anaconda3-5.3.0-Linux-x86_64.sh 上传到 /root/data/
3.制作镜像
3.1 拉取镜像
docker pull centos:7.6.1810
3.2 安装 Anaconda
# 进入镜像
docker run -v /root/data:/tzx -it centos:7.6.1810 bash
# 安装工具
yum install -y bzip2
yum install -y vim
# 进入/tzx目录,并安装 Anaconda
bash Anaconda3-5.3.0-Linux-x86_64.sh
# 环境变量生效
source ~/.bashrc
3.3 安装 Jupyter Lab
# 使用 conda 命令安装
conda install -c conda-forge jupyterlab=0.35.4
#生成配置文件
jupyter lab --generate-config
# 配置文件路径 /root/.jupyter/jupyter_notebook_config.py
# 新增属性
c.NotebookApp.allow_root = True
c.NotebookApp.open_browser = False
c.NotebookApp.ip = '*'
3.4 制作镜像
# 28f5d7b6e107 为当前的容器 ID
docker commit 28f5d7b6e107 centos7:v2
4.启动命令
# 限制内存、限制CPU、使用Volume
docker run -p 10001:8888 -v /root/data:/tzx --cpus 1 -m 2G centos7:v2 /root/anaconda3/bin/jupyter-lab
5.思考总结
- 官方 Notebook 的镜像基于 Ubuntu18.04,如果在 CentOS 下直接使用,会有一堆的惊喜等着你
- Anaconda3 版本和 Jupyter Lab 版本请保持一致,否则也会有惊喜
- 此文没有使用 Dockerfile 构建镜像,commit 方式产生的镜像被执行时,请按照绝对路径执行