开发环境准备
一、Docker容器 ---- pycharm远程连接
1.1 创建一个目标容器
$ docker run -it --name journal-test --restart always --gpus all -p 10025:10010 -p 10024:22 -v /home/elfin/utils/journal-test:/home/medaxis/ --net layoutnet ubuntu_ai:18.04 /bin/bash
这里的ubuntu_ai:18.04镜像是我之前生成的一个工作基础镜像,其中包含了linux常用指令集,nvidia的相关配置,anaconda3的python环境。
1.2 安装ssh服务
测试容器是否有ssh服务
$ /etc/init.d/ssh status
没有就安装
$ sudo apt-get install openssh-server
配置文件修改
$ vim /etc/ssh/sshd_config
# 将#PermitRootLogin prohibit-password下添加一行“PermitRootLogin yes”
# 添加:
# RSAAuthentication yes
# PubkeyAuthentication yes
重启ssh服务
$ service ssh restart
# 或者:
$ systemctl restart sshd
配置容器内的用户密码:
passwd
# 配置密码后可以远程连接
设置SSH开机自启动
sudo sysytemctl enable ssh
1.3 pycharm远程连接docker容器内的项目
Xshell测试连接
测试远程连接是否可行,我这里使用xshell6连接容器,成功进去到容器内!
容器外测试连接
测试通过后,在本地使用pycharm进行远程环境连接配置!
step1
本地配置项目环境:
File--->Setting--->Project: xxxxxx --->Project Interpreter ---> 添加环境 ---> SSH Interpreter
输入容器的IP与端口,注意这里的ip是宿主机的ip地址,端口为容器内22端口的映射端口!
下一步选择容器内的python环境即可!
step2
Tools配置上传
Tools---> Deployment ---> Connection里面设置根目录---> Mappings里面设置映射路径
远程测试:
-
项目路径下文件列表
-
pycharm下创建、修改文件
在xshell里可以看到有相应的文件:
经过测试,相应连接成功了!!