1、pycharm连接docker环境
步骤如下:
(1)启动docker容器
(2)docker容器安装ssh连接服务
(4)测试能否连接到docker
(3)pycharm配置远程解释器及上传文件路径映射
(4)若容器退出后,重启容器并启动容器的ssh连接服务
启动docker容器
(1)启动docker容器,并进入容器内
# 如下指令含义:以镜像名“deploy.deepexi.com/2048_ai/xmeta_server:v3.4.0_beta_13”启动名为“xmeta_test1”的容器,其中对外端口为8022,即可以8022端口访问容器。
docker run --name xmeta_test1 --entrypoint /bin/bash -p 8022:22 -it deploy.deepexi.com/2048_ai/xmeta_server:v3.4.0_beta_13
示例效果如下:
docker容器安装ssh连接服务
(1)安装ssh
apt update
apt-get install openssh-server
若出现如下问题:
则根据提示安装对应版本openssh-client,如下所示重新安装:
安装效果如下所示:
(2)设置root账号的登陆密码
passwd
(3)配置sshd_config文件:若无PermitRootLogin yes 则加入。
vim /etc/ssh/sshd_config
(4)重启ssh服务
service ssh restart
测试能否连接到docker
# 8022商品为之前启动docker对外映射的端口号
ssh root@172.xx.xx.9 -p 8022
pycharm配置远程解释器及上传文件路径映射
(1)工程添加远程解释器。docker容器解释器和配置远程服务器本身的pythom解释器类似:
(2)密码为之前设置docker容器内的root账户的密码
(3)添加解释器及上传文件映射路径(即pychram中的deploy默认的)
(4)运行调试效果如下:
若容器退出后,重启容器并启动容器的ssh连接服务
# 查看所有容器(包含已停止的容器)
sudo docker ps -a
# 启动已经停止的容器
sudo docker start 容器ID
# 进入容器,并启动ssh连接服务
sudo docker exec -it 容器ID bash
service ssh restart
# 测试能否连接上容器
ssh root@127.0.0.1 -p 容器映射端口号