[deep learning] 03_Docker+Pycharm深度学习环境
程序员文章站
2022-07-11 15:35:59
...
文章目录
0. 补充说明
1. 在ubuntu18.04上进行
2. 在装了显卡驱动后,已经默认装好了cuda
1. 装Docker
2. 装nvidia-docker
3. 在docker上pull下来deepo
3.1 启动容器
docker run --gpus all -it -p 22:22 -v /host/data:/data -v /host/config:/config ufoym/deepo bash //将本地22端口映射到dcoker容器中的22端口
启动后,进入了容器的命令行:
3.2 配置容器ssh连接
在容器中:
sudo apt-get update
sudo apt-get upgrade
apt-get install openssh-server
配置sshd 修改sshd的默认配置,编辑文件/etc/ssh/sshd_config,修改文件中的以下三行:
PermitRootLogin yes # 可以登录 root 用户
PubkeyAuthentication yes # 可以使用 ssh 公钥许可
AuthorizedKeysFile .ssh/authorized_keys # 公钥信息保存到该文件中
重启sshd /etc/init.d/ssh restart
使得这些配置生效。
- 在容器中mkdir ~/.ssh
- touch ~/.ssh/authorized_keys
在新的终端上:
新开一个终端窗口,ssh-****** -t rsa -C “aaa@qq.com”(替换为你自己的邮箱),会在本地/.ssh目录下生成三个文件id_rsa、id_rsa.pub、known_hosts。复制id_rsa.pub文件中的内容。将复制的内容粘贴到容器/.ssh/authorized_keys文件中。
3.3 提交修改到镜像
以上对容器的修改并不会改变镜像文件,需要提交修改生成一个新的镜像。
在新终端:
docker ps 查看正在使用deepo容器,记录下该容器的CONTAINER ID,例如8b5a86d18e58。
在容器运行着的终端:
exit; 退出来docker commit -m 'add ssh' -a 'your-name' 8b5a86d18e58 deepo-ssh
这样会将刚刚在deepo容器中配置的ssh服务保存,并生成新的deepo-ssh镜像。在后续使用docker images命令可以查看到新的镜像已经被保存。
运行最终的容器
docker run -dit -p 22:22 -v ~/data:/data -v ~/config:/config deepo-ssh /usr/sbin/sshd -D # 此时已经到后台运行了
docker ps # 查看运行中的容器
- -d | 后台运行
- -p 12622:22 | 绑定当前22端口到deepo-ssh容器的22端口(ssh服务默认为22端口)
- -v ~/data:/data | 将~/data目录挂载到容器/data目录
- /usr/sbin/sshd -D | 容器运行的命令和参数,开启ssh服务
参考
推荐阅读
-
基于pytorch深度学习环境配置
-
卸载ubuntu,双系统重新搭建!从零开始搭建Linux深度学习环境!
-
百度研究出深度学习语音识别系统DeepSpeech,嘈杂环境下识别率超Google、苹果
-
深度学习环境搭建----第二篇常见问题解决
-
深度学习环境配置 ubuntu安装CUDA10.2失败!
-
论文学习之综述:《Deep learning》
-
[deep learning] 03_Docker+Pycharm深度学习环境
-
Ubuntu深度学习环境搭建 tensorflow+pytorch
-
基于深度学习的实例分割算法研究与应用——环境搭建
-
吴恩达 深度学习 1-4 课后作业2 Deep Neural Network for Image Classification: Application