在服务器的docker里 装anacond3深度学习环境的全流程基础向

背景:

实验室给我分配了一个服务器 已经装好了docker 和nvidi docker 。 现在我的目标是创建我自己的docker 然后在我自己的docker里装上anaconda环境。 我以前从没用过linux。所以对这一切都是迷迷茫茫不知其所以然。所以一些拙见还请不要见笑。也是整合了很多大佬的。(我是挂了VPN的,所以没有用过国内镜像,如果你发现哪里下不动东西了 可以搜搜怎么加入国内镜像源)

我的理解 docker 就是一个操作系统的模板。然后在服务器输入

建docker

docker images

可以看到很多镜像 这些镜像就是一个又一个的模板。然后你可以使用这些模板创建自己的操作系统。使用

docker ps -a

可以看到正在运行的容器 。什么叫做容器 ,就是根据模板(镜像)创建的一个操作系统,不同的容器之间互不干扰罢了。

使用docker run命令可以启用一个容器

docker run -p 10789:22  -it -d --name="容器名称" -v  镜像名称  /bin/bash

之后你所有的操作就相当于在你自己的电脑里玩了 。

等等,我们还没有创建自己的docker呢。

创建流程很长 这里有b站小姐姐做的一个视频可以参考。

https://www.bilibili.com/video/BV1bk4y1B7T5?from=search&seid=5835754095686451740&spm_id_from=333.337.0.0

我们做的就是取hub.docker.com这个网站上 找到自己喜欢的docker版本。docker版本其实就是别人写好的一些模板,跟ppt模板一样,我们先下下来然后自己修修改改变成自己的模板。模板有各个方向的 ,我们深度学习肯定要挑关于cuda的。点explore 搜nvidia 进入nvidia/cuda 在tag搜索自己的cuda版本  我用的是11.0-cudnn8 - runtime - ubu16.04 下图只是示例

在服务器的docker里 装anacond3深度学习环境的全流程基础向_第1张图片

复制后面那个pull到服务器窗口 就可以创建一个 docker了 。有dockers就可以启动什么的了 。

进入我们自己的docker 看看各个文件夹,发现啥也没有  因为是我们自己的新电脑嘛。我们就要开始装anaconda3了 。

启用容器

docker run --gpus all -d -p 0.0.0.0:10789:22 -it --name=容器名称 镜像id /bin/bash

进行基础的网络安装: ping config

        

apt-get update
apt install net-tools        # ifconfig 
apt install iputils-ping     # ping

        

装conda

取conda官网找自己喜欢的安装包

https://repo.anaconda.com/archive/

我选的是

https://repo.anaconda.com/archive/Anaconda3-5.3.0-Linux-x86_64.sh

所以输入命令 (先安装wget)

apt-get install -y wget
wget https://repo.anaconda.com/archive/Anaconda3-5.3.0-Linux-x86_64.sh

安装解压程序

        

apt-get install bzip2

找到自己的anacnoda安装包位置  好像在home里 要不然就是root里??

然后输入命令 

chmod +x Anaconda3-5.3.0-Linux-x86_64.sh
./Anaconda3-5.3.0-Linux-x86_64.sh

回车,一直yes  不过vscode可装可不装 自己看着办 

然后输入conda -V 看看是不是显示 

conda不是啥命令 没听说过 。

说明没配置好环境变量 找到你的安装目录 。把安装目录下的conda所在文件夹 放到环境变量去。

        比如我的conda在home里  就是下面这句命令啦 

export PATH=$PATH:/home/anaconda3/bin
source ~/.bashrc

保存后再来   成啦!  说明conda安装成功了 而且设置好了环境变量 。


也可以同时创建一个软连接:因为bin本身就是环境变量


ln -s /root/anaconda3/bin/python /bin/anaconda3

 删除自己的conda安装包:


(base) root@60a197e8a57f:/# rm -rf /home/Anaconda3-5.3.0-Linux-x86_64.sh

配置自己的环境 

先创建一个  li_3_8是我自己的环境名字

conda create -n li_3_8 python=3.8

 激活创建的环境

conda activate li_3_8

看到本来是root 前面带了li_3_8 说明我们在这个环境里了 

去torch官网找适配自己cuda版本的torch

https://pytorch.org/get-started/previous-versions/
conda install pytorch==1.7.1 torchvision==0.8.2 torchaudio==0.7.2 cudatoolkit=11.0 -c pytorch

我的是上面这个版本 输入 回车

这一步比较慢 我这篇文章都快写完了 torch还是没装完。

可以搜搜换源的方法,把源换成国内源 什么清华源什么的  我懒得换了 去吃个饭 正好等等他。

安装好torch了  其他的都类似。

容器固化 :

安装好环境 我们考虑将容器固化 

我们知道模板才是永久的 容器停了就没了  所以将容器变成模板 以后用这个带环境的模板就好  

ctrl +d 退出容器 

然后 docker ps -a 看容器列表

在服务器的docker里 装anacond3深度学习环境的全流程基础向_第2张图片

docker commit 容器id dock名字:标签

 可以得到新的模板docker

 如果你想继续用刚才那个退出的容器 就 

docker start id
docker attach id

 在服务器的docker里 装anacond3深度学习环境的全流程基础向_第3张图片

PYcharm连接:

至此 环境安装完毕。 后面是如何在PYcharm连接这个容器 使用此容器的环境。,

1 启动容器    使用服务器的22端口  如果你刚才也用的下面这句启动的容器 就不用新建容器啦  start attach 进入容器即可。 主要是端口设置     (如果没设置端口 使用我们刚才固化的那个镜像 新建容器 )

docker run -gpus all -p 10789:22  -it -d --name="容器名称" -v  镜像名称  /bin/bash

2 更新apt  安装ssh 和vim

apt-get update

apt-get install openssh-server

apt-get install vim

3 用vim打开配置文件并修改

vim /etc/ssh/sshd_config 打开sshd_config配置文件

0:打开文件后 按o键 就可以修改啦  下面会出现一个insert标志
1. 找到PermitRootLogin prohibit-password这一行,修改为PermitRootLogin yes,允许通过ssh远程访问docker
2. 找到Port这一行,设置远程连接服务的端口号, 就是刚才的22,可以修改为一个认为合适的端口号

修改完毕后 按esc  insert标志消失   之后输入  :wq 回车  (注意冒号一定要打)

4  创建用户密码 

passwd root

之后会让两次输入密码 与windows不同的是 输入密码是看不到的  心中有数就行

5 :启动ssh

service ssh restart

到这里 服务器端配置完啦 。

点开我们的 pycharm   工具 部署配置 

在服务器的docker里 装anacond3深度学习环境的全流程基础向_第4张图片

在服务器的docker里 装anacond3深度学习环境的全流程基础向_第5张图片

点三个点在服务器的docker里 装anacond3深度学习环境的全流程基础向_第6张图片

 输入刚才对应端口 10789

和刚才的密码 在服务器的docker里 装anacond3深度学习环境的全流程基础向_第7张图片

 修改映射路径  就是你本地文件要上传服务器 上传到哪里呢 ? 就是部署路径里 

在服务器的docker里 装anacond3深度学习环境的全流程基础向_第8张图片

万事具备 只欠解释器 

 在服务器的docker里 装anacond3深度学习环境的全流程基础向_第9张图片

 点到解释器设置 

 ssh解释器  现有

 在服务器的docker里 装anacond3深度学习环境的全流程基础向_第10张图片

 连接好后下一个  

点文件 找到conda/envs/环境名/bin 里的 python文件 选中 确定   

 在服务器的docker里 装anacond3深度学习环境的全流程基础向_第11张图片

 解释器选这个新的解释器  确定 

在服务器的docker里 装anacond3深度学习环境的全流程基础向_第12张图片

 在刚才的 工具 部署配置里  选中你的 服务器  点那个对号  

在服务器的docker里 装anacond3深度学习环境的全流程基础向_第13张图片

 点工具 部署 上传

在服务器的docker里 装anacond3深度学习环境的全流程基础向_第14张图片

新建一个test  

输入 

import torch
print(1)

 部署 上传 (注意本地改变后就要上传 也可以自动上传)

运行得到结果!!!!!!!

全剧终 至此完成了 在服务器新建docker 并装环境形成镜像 并用pycharm连接的全过程

参考文献: 

Nvidia-docker 配置深度学习环境服务器(cuda+cudnn+anaconda+python)GPU服务器的配置_哔哩哔哩_bilibili

使用docker搭建深度学习环境-从零开始(上)_ambm29的博客-CSDN博客_docker深度学习

使用docker搭建深度学习环境-从零开始(下)_ambm29的博客-CSDN博客_docker搭建深度学习环境

如何在Linux服务器上安装Anaconda(超详细)_あなたを待って-CSDN博客_服务器安装anaconda

PyCharm连接Docker容器内部Python解析器和Jupyter_修行者_Yang的博客-CSDN博客_pycharm连接容器

你可能感兴趣的:(日常学习,docker,服务器,linux,深度学习,deep,learning)