最新JetBrainsPyCharm自动部署Python(Django,tornado等)项目至远程服务器
每次开发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等)项目至远程服务器的更多相关文章
- centos上发布部署python的tornado网站项目完整流程
先说下大体上的做法,开发环境上要新弄一个 virtualenv的环境,在这个里面放你的开发调试,当然这个其实也不是必须的,但是这样会方便管理一些. 再在centos上也弄一个 virtualenv虚拟 ...
- nginx tomcat 自动部署python脚本【转】
#!/usr/bin/env python #--coding:utf8-- import sys,subprocess,os,datetime,paramiko,re local_path='/ho ...
- IntelliJ IDEA自动部署项目至远程服务器与传统部署项目至远程服务器的区别
每次开发Java项目时,对于所有Java开发人员来说,最枯燥的不是修改代码,而是实时将自己的代码上传至远程服务器,进行测试或者部署,本人最初开发也是这样,通过使用Xshell 5,WinSCP等工具对 ...
- Windows服务器Pyton辅助运维--01.自动Copy文件(文件夹)到远程服务器所在目录
Windows服务器Pyton辅助运维 01.自动Copy文件(文件夹)到远程服务器所在目录 开发环境: u Web服务器: Windows Server 2008 R2 SP1 IIS 7.5 u ...
- 部署web前端的react项目到linux服务器
部署web前端的react项目到linux服务器 项目的目录结构 ``` ├─dlls #dlls编译后的问题 ├─doc #帮助文件入口 │ ├─src │ ├─apps #各个功能模块放在这里 │ ...
- 使用Nginx+uwsgi在亚马逊云服务器上部署python+django项目完整版(二)——部署配置及相关知识
---恢复内容开始--- 一.前提: 1.django项目文件已放置在云服务器上,配置好运行环境,可正常运行 2.云服务器可正常连接 二.相关知识 1.python manage.py runserv ...
- 部署Eclipse中的Web项目到Tomcat服务器运行
用Eclipse开发Web项目时,可以通过Tomcat服务器运行Web项目,此时Web项目被部署在[WorkSpace]\.metadata\.plugins\org.eclipse.wst.serv ...
- Jenkins部署码云SpringBoot项目到远程服务器
本文是上一篇文章的后续,上一篇只是利用Jenkins部署项目到本地,并启动,本文是将项目部署到远程服务器并执行. 1.环境准备 1.1 安装插件 上一篇文章已经介绍了需要安装的应用及插件,这一篇还需要 ...
- Python—实现ssh客户端(连接远程服务器)
paramiko是一个基于SSH用于连接远程服务器并执行相关操作(SSHClient和SFTPClinet,即一个是远程连接,一个是上传下载服务),使用该模块可以对远程服务器进行命令或文件操作,值得一 ...
随机推荐
- 游戏服务器和Web服务器的区别
用Go语言写游戏服务器也有一个多月了,也能够明显的感受到两者的区别.这篇文章就是想具体的聊聊其中的区别.当然,在了解区别之间,我们先简单的了解一下Go语言本身. 1. Go语言的特点 Go语言跟其他的 ...
- vue路由跳转的方式
vue路由跳转有四种方式 1. router-link 2. this.$router.push() (函数里面调用) 3. this.$router.replace() (用法同push) 4. t ...
- Kubernetes的RBAC是啥
RBAC: Role-Based Access Control,基于角色的权限控制,有以下三种角色 Role:角色,它其实是一组规则,定义了一组API对象的操作权限 Subject:被作用者,可以是人 ...
- 02-15 Logistic回归(鸢尾花分类)
目录 Logistic回归(鸢尾花分类) 一.导入模块 二.获取数据 三.构建决策边界 四.训练模型 4.1 C参数与权重系数的关系 五.可视化 更新.更全的<机器学习>的更新网站,更有p ...
- Switch-case语句的应用
/** switch语句有关规则 • switch(表达式)中表达式的值必须是下述几种类型之一:byte,short, char,int,枚举 (jdk 5.0),String (jdk 7.0 ...
- 谈linux服务器运维需要掌握的技能
一.linux基础 包括对Linux整体的理解/使用和基本命令 二.运维的命令 运维相关的工具(命令) 三.基础服务 LAMP或LNMP :Apache/Nginx,MySQL,PHP/Python/ ...
- selenium3与Python3实战 web自动化测试框架 ☝☝☝
selenium3与Python3实战 web自动化测试框架 selenium3与Python3实战 web自动化测试框架 学习 教程 一.环境搭建 1.selenium环境搭建 Client: py ...
- 域渗透基础之Windows 2012创建域控制器
创建备份域控制器 这里就拿windows 2012 R2来当备份域控 如果一个域内有多个域控制器,可以有如下好处. 提高用户登录的效率:如果同时有多台域控制器对客户提供服务,可以分担审核用户登录身份( ...
- [CF722C] Destroying Array
C. Destroying Array time limit per test 1 second memory limit per test 256 megabytes input standard ...
- [BZOJ1116] CLO
1116: [POI2008]CLO Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 1311 Solved: 709[Submit][Status] ...