我们常常面临一种情况,在本地计算机进行开发,在服务器上进行运行。
这种开发方式有多种方法,一种是在本地计算机上进行开发、调试和测试,然后部署到服务器上。另一种是在本地计算机进行开发,在服务器上进行调试、测试和部署。我比较推荐第二种方法,因为最终的部署还是以服务器为主,本地仅仅作为编辑器,运行环境都在服务器上比较好。
PyCharm 针对这种远程开发与调试提供了支持,通过 SFTP 将文件上传到服务器,通过 SSH 在服务器上运行命令。
通过 SSH 协议,添加服务器的解释器
配置 SSH 登录服务器信息
输入服务器的 IP 地址,SSH 的端口为 22,登录用户名。
如果连接成功,你需要输入密码,当然可以使用密钥文件。
配置 Python 解释器,并配置 Deployment 文件同步
你可以编辑文件映射同步。
添加本地与远程服务器的文件映射。Local path 表示本地项目的地址,Deployment path 表示部署服务器的地址,相当于在本地开发,然后在服务器上部署。
创建完成后,在项目的解释器选择,刚配置的远程解释器。
注意: 一旦同意配置后,马上就会将本地文件同步到到服务器,并覆盖所有服务器上的文件。
注意: 通过 Deployment 配置编辑,如果设置 Root Path,那么 Deployment path 为相对位置
继续编辑解释器的配置,点击 “Show All”,选中配置并编辑
你会发现,有多种配置 SSH、Deployment configuration、Docker、Docker Compose、Vagrant。
SSH 配置,是通过 SSH 执行命令,执行服务器中 Python 命令。
Deployment 配置,用于同步文件。
SSH 配置
远端的 Python 解释器路径。
SSH 具体的配置
Deployment 配置
Deployment 具体的配置
通过 Deployment 进行更多的同步操作
你可以关闭自动同步功能,手动上传某个文件到服务器,也可以从服务器上传下某个文件,也可以比较服务器与本地文件的差异,也可以使用同步窗口进行操作。
可以手动创建 Deployment 配置文件。
可以设置 Deployment 选项。
通过 Remote Host 窗口,查看服务器上的文件。
如何排除不同的文件?
我们有时候,不想同步 本地的资源和远端的生成文件。
一种是通过选项,来排除带有某种后缀的文件。
一种是通过配置,来排除不同某些目录。
运行或调试某个远程脚本,并添加命令行参数和环境变量
运行或调试脚本
添加命令行参数
添加环境变量
Python 解释器路径。
当前源文件工作目录。
环境变量
你也可以使用本地的解释器,并通过 Deployment 同步文件到服务器
只需要,将解释器从 SSH 解释器 切换为 本地的解释器。Deployment 不需要改动,照样可以使用。