curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
安装成功
将非root用户加入docker组,否则后续命令需要sudo权限
sudo gpasswd -a 用户名 docker
sudo service docker restart
newgrp - docker
可能出现问题: 参考博客完美解决docker问题:Failed to allocate directory watch: Too many open files_源代码杀手的博客-CSDN博客
sudo vim /etc/sysctl.conf
sudo sysctl -p
再次执行,解决!
使用:
拉取ubuntu18.04版本,并新建一个test容器
docker pull ubuntu:18.04
docker run -it ubuntu:18.04
安装nvidia container toolkit
设置NVIDIA Container Toolkit的stable版本存储库的GPG key
distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \
&& curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add - \
&& curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
获取:
sudo apt-get update && sudo apt-get install -y nvidia-container-toolkit --fix-missing
sudo systemctl restart docker
docker调用宿主机GPU
docker run -it --gpus all ubuntu:18.04
安装anaconda
注意:以下命令需要区分是在宿主机终端(外边的终端)还是docker容器(docker命令行)执行
启动一个基于ubuntu18.04镜像的容器(宿主机命令)
sudo docker run -it ubuntu:18.04 /bin/bash
新建工作路径(docker容器命令)
cd home
mkdir work
在宿主机下载anaconda安装包并复制到容器工作路径(宿主机)
复制命令如下:
sudo docker cp 文件名 容器ID:路径/文件名
sudo docker cp Anaconda3-2021.11-Linux-x86_64.sh f887fea4f2f7:/home/work/Anaconda3-2021.11-Linux-x86_64.sh
安装 anaconda,过程中全部都选择 yes(docker容器命令)
bash Anaconda3-2020.11-Linux-x86_64.sh
使环境变量生效(docker容器命令)
source ~/.bashrc
保存容器为镜像
提交容器副本构建新的镜像(宿主机) 需要执行一会
sudo docker commit -m "install Anaconda3" -a "lq" f887fea4f2f7 ubuntu18.04anaconda3
-m: 提交的描述信息
-a: 指定镜像作者
f887fea4f2f7: CONTAINER ID
ubuntu18.04anaconda3: 指定要创建的目标镜像名
查看新镜像是否创建成功(宿主机)
sudo docker images
用新镜像启动一个容器(当然要带--gpus参数)(宿主机)
sudo docker run --gpus all -it ubuntu18.04anaconda3 /bin/bash
启动成功!
安装工程环境
复制本地工程到工作环境(宿主机)
sudo docker cp clothev1.0.tar.xz 97027c8ab995:/home/work/clothev1.0.tar.xz
解压命令:
xz -d xxx.tar.xz #将 xxx.tar.xz解压成 xxx.tar 然后,
tar xvf xxx.tar #解包完成
然后安装工程所需的环境即可!