背景: 实验室给我分配了一个服务器 已经装好了docker 和nvidi docker 。 现在我的目标是创建我自己的docker 然后在我自己的docker里装上anaconda环境。 我以前从没用过linux。所以对这一切都是迷迷茫茫不知其所以然。所以一些拙见还请不要见笑。也是整合了很多大佬的。(我是挂了VPN的,所以没有用过国内镜像,如果你发现哪里下不动东西了 可以搜搜怎么加入国内镜像源)
我的理解 docker 就是一个操作系统的模板。然后在服务器输入
可以看到很多镜像 这些镜像就是一个又一个的模板。然后你可以使用这些模板创建自己的操作系统。使用
可以看到正在运行的容器 。什么叫做容器 ,就是根据模板(镜像)创建的一个操作系统,不同的容器之间互不干扰罢了。
使用docker run命令可以启用一个容器
之后你所有的操作就相当于在你自己的电脑里玩了 。
等等,我们还没有创建自己的docker呢。
创建流程很长 这里有b站小姐姐做的一个视频可以参考。
我们做的就是取hub.docker.com这个网站上 找到自己喜欢的docker版本。docker版本其实就是别人写好的一些模板,跟ppt模板一样,我们先下下来然后自己修修改改变成自己的模板。模板有各个方向的 ,我们深度学习肯定要挑关于cuda的。点explore 搜nvidia 进入nvidia/cuda 在tag搜索自己的cuda版本 我用的是11.0-cudnn8 - runtime - ubu16.04 下图只是示例
复制后面那个pull到服务器窗口 就可以创建一个 docker了 。有dockers就可以启动什么的了 。
进入我们自己的docker 看看各个文件夹,发现啥也没有 因为是我们自己的新电脑嘛。我们就要开始装anaconda3了 。
启用容器
进行基础的网络安装: ping config
然后就是装conda了 取conda官网找自己喜欢的安装包
我选的是
所以输入命令 (先安装wget)
安装解压程序
找到自己的anacnoda安装包位置 好像在home里 要不然就是root里??
然后输入命令
回车,一直yes 不过vscode可装可不装 自己看着办
然后输入conda -V 看看是不是显示
说明没配置好环境变量 找到你的安装目录 。把安装目录下的conda所在文件夹 放到环境变量去。
比如我的conda在home里 就是下面这句命令啦
保存后再来 成啦! 说明conda安装成功了 而且设置好了环境变量 。
删除自己的conda安装包:
然后配置自己的环境
先创建一个 li_3_8是我自己的环境名字
激活创建的环境
看到本来是root 前面带了li_3_8 说明我们在这个环境里了
去torch官网找适配自己cuda版本的torch
我的是上面这个版本 输入 回车
这一步比较慢 我这篇文章都快写完了 torch还是没装完。
可以搜搜换源的方法,把源换成国内源 什么清华源什么的 我懒得换了 去吃个饭 正好等等他。
安装好torch了 其他的都类似。
安装好环境 我们考虑将容器固化 我们知道模板才是永久的 容器停了就没了 所以将容器变成模板 以后用这个带环境的模板就好
ctrl +d 退出容器
然后 docker ps -a 看容器列表
可以得到新的模板docker
如果你想继续用刚才那个退出的容器 就
至此 环境安装完毕。 后面是如何在PYcharm连接这个容器 使用此容器的环境。,
1 启动容器 使用服务器的22端口 如果你刚才也用的下面这句启动的容器 就不用新建容器啦 start attach 进入容器即可。 主要是端口设置 (如果没设置端口 使用我们刚才固化的那个镜像 新建容器 )
2 更新apt 安装ssh 和vim
3 用vim打开配置文件并修改
4 创建用户密码
之后会让两次输入密码 与windows不同的是 输入密码是看不到的 心中有数就行
5 :启动ssh
到这里 服务器端配置完啦 。
点开我们的 pycharm 工具 部署配置
点三个点
输入刚才对应端口 10789
和刚才的密码
修改映射路径 就是你本地文件要上传服务器 上传到哪里呢 ? 就是部署路径里
万事具备 只欠解释器
点到解释器设置
ssh解释器 现有
连接好后下一个
点文件 找到conda/envs/环境名/bin 里的 python文件 选中 确定
解释器选这个新的解释器 确定
在刚才的 工具 部署配置里 选中你的 服务器 点那个对号
点工具 部署 上传
新建一个test
输入
部署 上传 (注意本地改变后就要上传 也可以自动上传)
运行得到结果!!!!!!!
全剧终 至此完成了 在服务器新建docker 并装环境形成镜像 并用pycharm连接的全过程
参考文献: