開發環境准備
一、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 systemctl 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里可以看到有相應的文件:
經過測試,相應連接成功了!!