每次开发Python项目时,对于所有Python开发人员来说,最枯燥的不是修改代码,而是实时将自己的代码上传至远程服务器,进行测试或者部署,本人最初开发也是这样,通过使用Xshell 5,WinSCP等工具对项目进行远程部署测试,每次都得花大量时间,对开发和部署来说,太过于繁琐,后来发现捷克公司开发的工具捷克JetBrainsPyCharm具有将Python项目自动部署到远程服务器的功能,为开发提供了很大的帮助。

这几种部署项目到远程服务器的操作方式,我为大家一一介绍:

Xshell 5

使用Xshell 5可以部署多种项目(Java,Python,脚本等)到远程服务器,具体操作如下:

首先需要将部署文件上传下载:

// 首先安装lrzsz

# yum -y install lrzsz

// 上传文件,执行命令rz,会跳出文件选择窗口,选择好文件,点击确认即可。

# rz

// 下载文件,执行命令sz

# sz

通过Xshell 5登录到远程服务器,执行rz命令将项目上传至远程服务器,然后在命令窗口通过命令启动项目,比如Java的web项目若要部署在linux服务器的tomcat下,需要将项目的war包上传至服务器Tomcat  webapp目录下或者jar包上传至指定  目录下,通过启动sh startup.sh、./startup.sh命令或者启动jar包命令等(不同项目启动方式不同),主要看你项目部署路径和部署方案,当重新部署的时候,需要通过sh shutdown.sh  、./shutdown.sh命令或者用ps -ef |grep java 获取Java进程号后通过killall -9 进程号,让Java项目停止运行,然后重新部署。

这种方案需要记得大多数linux命令,难度系数*****。

Xshell5+WinSCP

使用Xshell 5+WinSCP也可以部署多种项目(Java,Python,脚本等)到远程服务器,具体操作如下:

使用WinSCP将项目上传至远程服务器指定目录下,在通过Xshell 5命令窗口启动项目、停止或者重新启动,比如Java的web项目若要部署在linux服务器的tomcat下,需要将项目的war包上传至服务器Tomcat  webapp目录下或者jar包上传至指定  目录下,通过启动sh startup.sh、./startup.sh命令或者启动jar包命令等(不同项目启动方式不同),主要看你项目部署路径和部署方案,当重新部署的时候,需要通过sh shutdown.sh  、./shutdown.sh命令或者用ps -ef |grep java 获取Java进程号后通过killall -9 进程号,让Java项目停止运行,然后重新部署。通过操作命令即可完成操作,相对第一中更加容易理解,但操作过于复杂,建议新手使用!!!难度系数****。

JetBrainsPyCharm自动部署

JetBrainsPyCharm自动部署如下:
打开JetBrainsPyCharm点击Tools/Deployment/Configuration(或者File-Settings-Build,Execution,Deployment-Deployment都行),界面如下所示:

填写远程服务器信息,并测试远程服务器连接成功;

填写本地和远程服务器项目路径;

到这里我们就差最后一个环节;

点击File-Settings-Project,Project Interpreter,Add Remote;

最后点击Deployment Configuration选择开始配置的连接信息点击ok即可;

最后用JetBrains PyCharm打开项目,右键点击Deployment,Unpload to 配置名(或者Tools,Deployment,Unpload to),运行项目即可!!!

可能配置的时候有些复杂,但是如果你能配置好,测试部署方便很多 !!!

最后小编给大家几个很好用的命令,若项目无法运行时,可以的是通过ps -ef |grep Python查找自己运行项目的(可以根据项目名称)进程号,然后使用kill -9 进程号,杀掉自己项目运行的进程号使用killall -9 python 可以杀掉所有Python运行的进程(慎用),说不准你重新运行就可以了,记住这个是Python的哦,java的是通过ps -ef |grep java查找自己运行项目的(可以根据项目名称)进程号,然后使用kill -9 进程号,杀掉自己项目运行的进程号,或者ps -ef | grep java | grep -v grep |awk '{print $2}' | xargs -p kill -9杀掉所有Java进程,慎用!!!

最新JetBrainsPyCharm自动部署Python(Django,tornado等)项目至远程服务器的更多相关文章

  1. centos上发布部署python的tornado网站项目完整流程

    先说下大体上的做法,开发环境上要新弄一个 virtualenv的环境,在这个里面放你的开发调试,当然这个其实也不是必须的,但是这样会方便管理一些. 再在centos上也弄一个 virtualenv虚拟 ...

  2. nginx tomcat 自动部署python脚本【转】

    #!/usr/bin/env python #--coding:utf8-- import sys,subprocess,os,datetime,paramiko,re local_path='/ho ...

  3. IntelliJ IDEA自动部署项目至远程服务器与传统部署项目至远程服务器的区别

    每次开发Java项目时,对于所有Java开发人员来说,最枯燥的不是修改代码,而是实时将自己的代码上传至远程服务器,进行测试或者部署,本人最初开发也是这样,通过使用Xshell 5,WinSCP等工具对 ...

  4. Windows服务器Pyton辅助运维--01.自动Copy文件(文件夹)到远程服务器所在目录

    Windows服务器Pyton辅助运维 01.自动Copy文件(文件夹)到远程服务器所在目录 开发环境: u  Web服务器: Windows Server 2008 R2 SP1 IIS 7.5 u ...

  5. 部署web前端的react项目到linux服务器

    部署web前端的react项目到linux服务器 项目的目录结构 ``` ├─dlls #dlls编译后的问题 ├─doc #帮助文件入口 │ ├─src │ ├─apps #各个功能模块放在这里 │ ...

  6. 使用Nginx+uwsgi在亚马逊云服务器上部署python+django项目完整版(二)——部署配置及相关知识

    ---恢复内容开始--- 一.前提: 1.django项目文件已放置在云服务器上,配置好运行环境,可正常运行 2.云服务器可正常连接 二.相关知识 1.python manage.py runserv ...

  7. 部署Eclipse中的Web项目到Tomcat服务器运行

    用Eclipse开发Web项目时,可以通过Tomcat服务器运行Web项目,此时Web项目被部署在[WorkSpace]\.metadata\.plugins\org.eclipse.wst.serv ...

  8. Jenkins部署码云SpringBoot项目到远程服务器

    本文是上一篇文章的后续,上一篇只是利用Jenkins部署项目到本地,并启动,本文是将项目部署到远程服务器并执行. 1.环境准备 1.1 安装插件 上一篇文章已经介绍了需要安装的应用及插件,这一篇还需要 ...

  9. Python—实现ssh客户端(连接远程服务器)

    paramiko是一个基于SSH用于连接远程服务器并执行相关操作(SSHClient和SFTPClinet,即一个是远程连接,一个是上传下载服务),使用该模块可以对远程服务器进行命令或文件操作,值得一 ...

随机推荐

  1. ORM查询总结版

    目录 概要 ORM常用字段 ORM基础 自定义一个插入类型,即固定长度 创建类终极版 多对多关系表创建 常用几个代码 参数 ORM与数据库代码对应的关系 外键使用分表很麻烦,要先删除主表后,再删除 不 ...

  2. 02-25 scikit-learn库之决策树

    目录 scikit-learn库之决策树 一.DecisionTreeClassifier 1.1 使用场景 1.2 代码 1.3 参数详解 1.4 属性 1.5 方法 二.DecisionTreeR ...

  3. Flex 布局——语法属性详解

    前言 Flexbox 是 flexible box 的简称(注:意思是“灵活的盒子容器”),是 CSS3 引入的新的布局模式.它决定了元素如何在页面上排列,使它们能在不同的屏幕尺寸和设备下可预测地展现 ...

  4. MySQL学习(四)深入理解乐观锁与悲观锁

    转载自:http://www.hollischuang.com/archives/934 在数据库的锁机制中介绍过,数据库管理系统(DBMS)中的并发控制的任务是确保在多个事务同时存取数据库中同一数据 ...

  5. Java编程思想——第17章 容器深入研究 读书笔记(三)

    七.队列 排队,先进先出. 除并发应用外Queue只有两个实现:LinkedList,PriorityQueue.他们的差异在于排序而非性能. 一些常用方法: 继承自Collection的方法: ad ...

  6. 代码审计-凡诺CMS 2.1文件包含漏洞

    0x01代码审计 后台账号密码: admin admin 安装好了是这样的 漏洞文件:/channel.php if (ism()) { include($dir.$t_mpath.$c_mcmode ...

  7. Meterpreter后渗透之信息收集

    在获得目标的Meterpreter shell后 进行信息收集是后渗透工作的基础 记录一下关于meterpreter 信息收集的使用 环境: kali linux 192.168.190.141 xp ...

  8. Python开发【第九篇】字典

    字典 字典是一种可变的容器,可以存储任意类型的数据 字典中的每个数据都是用键进行索引,而不像序列容器(str,list,tuole)可以用整数进行索引 字典中的数据没有先后顺序,字典的存储是无序的 字 ...

  9. OpenvSwitch系列之ovs-ofctl命令使用

    Open vSwitch系列之一 Open vSwitch诞生 Open vSwitch系列之二 安装指定版本ovs Open vSwitch系列之三 ovs-vsctl 命令使用 OpenvSwit ...

  10. 以np.concatenate为主题,谈谈numpy数组按维度合并的问题

    1.引言 最近在做多模态融合的图像问题,其中最需要解决的就是不同模态的图像用什么方法进行融合,最简单也最直观的方法就是采用合并数组的方法,将不同模态的图像合并为多通道进行处理.在一些论文中,比如< ...