定制镜像制作指南(AI平台使用)

该教程详细介绍了如何制作带有cuda、tensorflow、opencv、Keras和numpy的深度学习镜像。包括从NGC官方获取基础镜像、自定义cuda镜像、安装组件如python3.6.6、tensorflow-gpu 1.8.0、opencv-python 3.4.3.18等。同时,还提供了离线安装组件的方法和验证基础镜像的步骤。
摘要由CSDN通过智能技术生成

目录

一、基础镜像

1.1 NGC官方基础镜像

1.2 自制带cuda的基础镜像

1.2.1 下载Dockerfile

1.2.2 修改Dockerfile

1.2.3 替换FROM基础镜像

1.2.4 替换cudnn(如果没有指定版本,忽略该部分内容)

1.2.5 其它部分修改

1.2.6 在线制作cuda基础镜像

1.2.7 离线下载RUN安装的cuda组件(如果在线制作顺利,忽略该部分)

1.2.8 验证基础镜像

二、安装组件

2.1 安装python3

2.1.1、在本地服务器下载python3.6.6安装包:

2.1.2、挂载/home/wjy目录到容器:

2.1.3、安装python3.6

2.1.4、修改配置文件

2.2 安装tensorflow

2.2.1 安装

2.2.2 查看版本

2.3 安装opencv

2.3.1 安装

2.3.2 查看版本

2.3.3 安装opencv共享库

2.4 安装Keras

2.4.1 安装

2.4.2 查看版本

2.5 安装numpy

2.5.1 安装

2.5.2 查看版本


一、基础镜像

      因为基础镜像都需要安装cuda、cudnn等深度学习必备组件,如果客户使用的镜像对操作系统版本(官方镜像操作系统都是最新的)、cudnn版本没有要求,以及要求操作系统是ubuntu系统,都可以去NGC官网,下载指定cuda版本的基础镜像,具体参考1.1

       如果客户指定操作系统版本为centos,或指定cuda、cudnn版本,NGC官方没有该基础镜像,则需要客户自制带指定操作系统或cuda版本的基础镜像,具体参考1.2

  

       本文档,以某客户定制镜像,作为示例,其它客户定制需求,参考此文档,进行灵活制作,不用过于教条,客户定制要求:

        操作系统:centos7.4  

        numpy==1.15.4

        opencv-python==3.4.3.18

        tenserflow-gpu==1.8.0

        Keras==2.2.4

        python3.6.6

        cudnn 7.0

        cuda9.0

注意:

       制作镜像,需要在联网环境,如果不能联网,需要自己到联网环境,下载离线包,再拷贝到离线环境制作镜像,但是不推荐,因为,安装的组件,依赖包比较多,少下载一个,就可能导致离线安装组件失败,如果经验比较丰富,在线和离线都可以。本文以在线制作镜像为主,会提供离线下载组件和离线安装组件命令。

       按照要求定制或者制作的镜像,只安装了客户需要的组件,由于镜像中的操作系统都是MINI版,客户实际使用过程中,需要的各种库或者依赖包,一般在线安装定制组件的时候,有些共享库或者组件包,并不会被自动安装,需要专门指定安装。如果客户指定,我们都会安装,如果客户没有指定,我们只安装客户指定的组件,像共享库或者依赖组件,由于和实际的使用和训练场景有关,对于具体需要什么共享库和依赖,我们制作人员都是未知的,所以,不提供安装。如果,客户在实际使用中,需要安装所需的共享库或者依赖组件,本文档会提供思路,具体问题需要具体分析。如果,经过尝试,实在解决不了,可以请求我们的技术人员协助,远程协助你们安装所需组件。

        如果没有最终失败,Dockerfile在线制作镜像输出的红色内容,请忽略,不影响最终制作的镜像。

1.1 NGC官方基础镜像

ubuntu的cuda基础镜像,都可以在NGC官方拉取,一般不需要单独制作,单独制作只针对centos版本。

NGC官方基础镜像下载地址:

CUDA | NVIDIA NGC

点击Pull Tag获取pull镜像命令,下载需要的基础镜像:

docker pull nvcr.io/nvidia/cuda:9.0-cudnn7-devel-centos7

1.2 自制带cuda的基础镜像

     由于客户定制的镜像,指定了操作系统,NGC官方镜像没有该基础镜像,需要自制基础镜像。

1.2.1 下载Dockerfile

    下载指定版本的cuda和操作系统的Dockerfile和cuda.repo,然后再修改Dockerfile.

dist · master · nvidia / container-images / cuda · GitLab

点击centos7进入cuda版本选择,选择cuda9.0

 

 

下载后,如图所示:

        gitlab cuda9.0下面,有base、devel、runtime目录,我们需要将每个下面的Dockerfile文件,汇总成一个Dockerfile文件,制作一个最全的cuda镜像,防止镜像使用GPU训练时出现问题。base、devel和runtime官方解释,如下:

CUDA images come in three flavors and are available through the NVIDIA public hub repository.

base: starting from CUDA 9.0, contains the bare minimum (libcudart) to deploy a pre-built CUDA application.
Use this image if you want to manually select which CUDA packages you want to install.

runtime: extends the base image by adding all the shared libraries from the CUDA toolkit.
Use this image if you have a pre-built application using multiple CUDA libraries.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

莹火233

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值