Pycharm远程调试代码

一、优势

可以实现在windows机器上管理代码,实际运行在Linux服务器上,这样实现代码不会出现版本兼容问题

二、原理


三、操作

以python为例,我们媒体调试的时候都需要需要在服务器上执行命令(/usr/bin/python ghost-tools.py basic_check)才会执行

1、服务器的配置

因为上述的命令需要执行在容器中,因此我需要搭建一个容器

1-1 特权模式启动容器

docker run -itd --privileged=true --workdir /data/ --network host --hostname mypython-test -v /data:/data --name mypython mypython:20200205 /usr/sbin/init
# 上面的命令不用解释就懂了吧,这里需要将hostname改成自己的,以防止与正式测试的时候出现冲突,这里我选择将代码同步到镜像的/data路径下
1-2 开启sshd服务
因为远程调试用到了sftp协议,这里需要在镜像内开启sshd服务才能实现从本地window的代码同步到Linux的执行目录,但是因为启动过程中可能默认开启了sshd服务,且该端口与宿主机都是22端口,这样就会出现sshd没有启动成功,因此需要修改配置
# 打开配置文件
[root@mypython-test test_auto_verify]# vi /etc/ssh/sshd_config

# 修改后的配置
Port 3456
AddressFamily any
ListenAddress 0.0.0.0
ListenAddress :::

# 重启
[root@mypython-test test_auto_verify]# systemctl restart sshd

# 查看状态
[root@mypython-test test_auto_verify]# systemctl status sshd
● sshd.service - OpenSSH server daemon
   Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: enabled)
   Active: active (running) since Wed 2020-03-04 12:40:48 CST; 6s ago
     Docs: man:sshd(8)
           man:sshd_config(5)
 Main PID: 4633 (sshd)
   CGroup: /docker/765dc379686879f4c5b831abb3f878ba10c0e36b1d204fb0aa09a38ab51e1079/system.slice/sshd.service
           └─4633 /usr/sbin/sshd -D
           ‣ 4633 /usr/sbin/sshd -D

Mar 04 12:40:48 mypython-test systemd[1]: Starting OpenSSH server daemon...
Mar 04 12:40:48 mypython-test sshd[4633]: Server listening on :: port 3456.
Mar 04 12:40:48 mypython-test sshd[4633]: Server listening on 0.0.0.0 port 3456.
Mar 04 12:40:48 mypython-test systemd[1]: Started OpenSSH server daemon.

1-3 修改密码

主要是让Pycharm能够连接到远程服务,不然不能同步本地代码到服务器
[root@mypython-test test_auto_verify]# passwd
Changing password for user root.
New password:
BAD PASSWORD: The password fails the dictionary check - it is too simplistic/systematic
Retype new password:
passwd: all authentication tokens updated successfully.

2、Pycharm配置远程连接

主要解决本地windows怎样与Linux连接的问题

2-1 工具 -> Deployment ->Configuration

2-2 添加新部署,这里选择SFTP,我这里命名为  测试auto_verify

2-3 选择创建好的 【测试auto_verify】按照下面顺序填写配置

3、Pycharm配置工程Interpreter

主要解决选择使用那一台机器、选择这台机器的哪个interpreter、windows同步到Linux的路径问题

3-1 选择菜单的【文件】-> 【设置】,然后按照图中指示进行操作进入到添加Interpreter的页面

3-2 选择ssh的机器,进入到配置interpreter的页面

3-3 配置interpreter

3-4 设定本地到远程服务器的源目录和目的目录

4、Pycharm配置工程启动

主要解决怎样一键触发调试问题

4-1找到编辑配置

4-2 添加触发的配置,选择python

4-3 为触发脚本进行配置

4-4 启动







posted @ 2020-03-04 14:30  二两007  阅读(238)  评论(0)    收藏  举报