dockerfile 说白了就是 生成镜像的文档。可以通过执行dockerfile很快速的生成镜像
文章目录
- 一、前言
- 二、执行dockerfile
- 2.1 dockerfile书写示例
- 2.2 dockerfile执行命令
- 三、通过镜像启动docker
- 3.1 启动镜像
- 3.2 启动docker
- 附录:小知识&问题记录
- 1. 如何查看ubuntu上cuda和cudnn的版本
一、前言
主要是以下几个步骤:
- 安装NVIDIA Container Toolkit。这个工具是nvidia官方提供,可以给docker提供一些接口,总之要在docker中使用GPU需要先装好这个工具;
- 执行dockerfile拉镜像以及封装
- 通过镜像启动docker
二、执行dockerfile
2.1 dockerfile书写示例
# 基础镜像
FROM nvidia/cuda:10.0-cudnn7-runtime-ubuntu18.04# 安装所需的依赖和工具
RUN apt-get update && \apt-get install -y --no-install-recommends \python3-pip \python3-dev \git \wget \ca-certificates \&& rm -rf /var/lib/apt/lists/*# 设置工作目录
WORKDIR /app# 安装Python依赖包
COPY requirements.txt .
RUN pip3 --no-cache-dir install -r requirements.txt# 复制应用代码
COPY . .# 设置环境变量
ENV LC_ALL=C.UTF-8
ENV LANG=C.UTF-8# 启动应用
CMD ["python3", "app.py"]
注意:
- 镜像名可以从这里获取:https://hub.docker.com/layers/nvidia/cuda/11.4.1-cudnn8-runtime-ubuntu18.04/images/sha256-258bc949d52cd6c4db94084e5180d1f0589ebfbea651c74486eaa06c2dcbf765?context=explore
- 拉取镜像速度过慢,可以参考此链接修改镜像源:https://blog.csdn.net/wuqingshan2010/article/details/111662824
2.2 dockerfile执行命令
docker build -t my-image -f /path/to/Dockerfile .
其中,-t 参数指定构建的镜像名称,-f 参数指定使用的 Dockerfile 文件,. 表示使用当前目录作为构建上下文。
三、通过镜像启动docker
3.1 启动镜像
- 常用命令
docker run --gpus all -it -p 8930:2892 --name thomas_docker -v 主机目录:容器目录 镜像名 /bin/bash
详细说明:https://blog.csdn.net/zhong_jay/article/details/108668246
3.2 启动docker
- 启动docker
docker start 容器id
注意:其中容器id通过docker ps
查询
- 进入docker
docker exec -it 容器id /bin/bash
- 关闭docker
docker stop 容器id
- 删除docker
docker rm 容器id
附录:小知识&问题记录
1. 如何查看ubuntu上cuda和cudnn的版本
要查看 Ubuntu 上的 CUDA 和 cuDNN 版本,可以按照以下步骤进行:
- 查看 CUDA 版本
可以使用以下命令来查看 CUDA 的版本:
cat /usr/local/cuda/version.txt
该命令将显示 CUDA Toolkit 的版本号。
- 查看 cuDNN 版本
可以使用以下命令来查看 cuDNN 的版本:
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
新版本:
cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
该命令将显示 cuDNN 的版本号和其他相关信息。
如果你的 CUDA 和 cuDNN 都安装在不同的路径中,那么请相应地更改上述命令中的路径。希望以上信息可以帮助你。
参考链接:
https://cloud.tencent.com/developer/article/1924792