创建一个安装了Jupyter lab 的 Docker
目录
本文,凌顺实验室(lingshunlab.com)将通过定义一个镜像,构建镜像,创建容器运行需要的东西这么一个Docker流程,介绍Docker的用法。
创建 Dockerfile
一般我会,创建一个文件夹来管理Docker的Dockerfile,可以在你想的位置创建该目录
mkdir Dockers
进入刚才创建的文件夹,再创建一个文件夹,这个testDockers
的名字可以替换是你喜欢的名称
cd Dockers
mkdir testDockers
再进入刚才创建的文件夹,创建一个Dockerfile,名称一定是Dockerfile,清注意
cd testDockers
touch Dockerfile
使用编辑器对该文件进行编辑,例如使用 vi 或者nano,我偏向使用nano,例如输入以下命令:
nano Dockerfile
我比较喜欢使用ubuntu,然后经常会用到Jupyter Lab,那么我就构建一个装有Jupyter Lab的Docker。
文件内容如下:
FROM ubuntu:22.04 # FROM指令表示从哪个镜像开始
MAINTAINER lingshunlab.com # 镜像的维护人
RUN apt-get update && apt-get upgrade -y
RUN apt install python3-pip -y # 安装 pip3
RUN apt install libffi-dev -y # 安装libffi-dev,因为JupyterLab安装过程会ffi.h报错
RUN pip3 install jupyterlab # 安装JupyterLab
编辑好,保存(ctrl+o),并推出(ctrl+x)。
使用 docker build 创建镜像
维持在当前目录下,使用以下命令,就开始构建一个镜像了
docker build -t docker_name:version_num .
使用docker build 命令 从 Dockerfile 构建镜像
docker_name
镜像的名称,这里可以替换成你喜欢的名字
version_num
镜像的标签,的这里也可以替换成你喜欢的名字,但一般我会用作标识版本号
.
是指当前目录下的Dockerfile
具体的docker build 解释请查看Docker的文档:
https://docs.docker.com/engine/reference/commandline/build/
经过一段时间的等待......
构建镜像完成。
可以通过,docker images
命令查看当前主机已经创建了的镜像
创建容器
使用docker run 创建一个新容器并运行命令
例如创建容器并进入该容器的终端:
docker run -t -i docker_name:version_num /bin/bash
例如创建容器后运行Jupyter Lab:
docker run -p 8889:8889 -v /home/pi:/home/ -it docker_name:version_num jupyter-lab --ip=0.0.0.0 --port=8889 --allow-root --ServerApp.token='your-password' --notebook-dir=/home --no-browser
-p
是将容器的端口映射到主机
-v
是将容器的指定文件夹映射到主机的指定文件夹,这样就可以实现文件共享,并且退出容器后,文件仍然存在。
之后就是Jupyter lab 的命令和选项
具体的docker run ,请查看:
https://docs.docker.com/engine/reference/commandline/run/