欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

编写dockerfile启动docker后执行启动jupyter

程序员文章站 2022-06-30 10:51:15
...

一、获取一个初始镜像

我这里的镜像是需要GPU的,所以我用了这个镜像

nvidia/cuda:10.1-cudnn7-devel-centos7

二、根据初始镜像启动容器,安装ananconda

# 在这里使用 [-p 宿主机端口:容器端口] 来映射jupyter端口
docker run --name=gpu_test -p 9890:8888 -m 30000MB -d -it --gpus all nvidia/cuda:10.1-cudnn7-devel-centos7 '/bin/bash'

# 进入容器后,安装anaconda

# 1.下载anaconda(我需要的python版本是:3.6)
wget https://repo.anaconda.com/archive/Anaconda3-5.2.0-Linux-x86_64.sh
# 安装anaconda
sh Anaconda3-5.2.0-Linux-x86_64.sh

 三、根据现有的容器保存镜像

# 使用 [docker -ps] 查看刚才运行的那个容器的ID
docker export -o gpu_jupyter.tar 容器ID

# 把这个gpu_jupyter.tar 导入为镜像,这个(gpu:v_1.0是我随便写的,它代表生成镜像的tag)
docker import gpu_jupyter.tar gpu/gpu_jupyter:v_1.0

四、编写dockerfile

这个一定要新建一个文件夹,名字随便。然后在文件夹内创建一个名为:Dockerfile 的文件,文件内容如下

# 这个FROM指定基础镜像,也就是我上面写的gpu/gpu_jupyter:v_1.0
FROM gpu/gpu_jupyter:v_1.0
# 指定环境变量
ENV PATH /data/anaconda/anaconda3/bin:$PATH

# 指定工作路径
WORKDIR /data/anaconda/work/
# 启动jupyter
ENTRYPOINT /data/anaconda/anaconda3/bin/jupyter notebook --ip=0.0.0.0 --allow-root

五、执行创建镜像命令

* 可千万别忘了最后那个点

docker build -t gpu/gpu_jupyter_auto_start:v_1.0 .

六、使用这个镜像创建容器

docker run --name=gpu_jupyter_test -p 9890:8888 -d -it --gpus all gpu/gpu_jupyter_auto_start:v_1.0 '/bin/bash'

七、参考&感谢

http://www.lwqgj.cn/51.html

https://www.cnblogs.com/panwenbin-logs/p/8007348.html