最新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,即一个是远程连接,一个是上传下载服务),使用该模块可以对远程服务器进行命令或文件操作,值得一 ...
随机推荐
- abp(net core)+easyui+efcore实现仓储管理系统——EasyUI之货物管理四 (二十二)
abp(net core)+easyui+efcore实现仓储管理系统目录 abp(net core)+easyui+efcore实现仓储管理系统——ABP总体介绍(一) abp(net core)+ ...
- 阿里巴巴开源 Dragonwell JDK 最新版本 8.1.1-GA 发布
导读:新版本主要有三大变化:同步了 OpenJDK 上游社区 jdk8u222-ga 的最新更新:带来了正式的 feature:G1ElasticHeap:发布了用户期待的 Windows 实验版本 ...
- WebGL简易教程(十一):纹理
目录 1. 概述 2. 实例 2.1. 准备纹理 2.2. 配置纹理 2.3. 使用纹理 3. 结果 4. 参考 1. 概述 在之前的之前的教程<WebGL简易教程(九):综合实例:地形的绘制& ...
- 06-01 DeepLearning-图像识别
目录 深度学习-图像识别 一.人脸定位 二.手工提取特征的图像分类 2.1 识图认物 2.2 传统分类系统的特征提取 2.3 计算机眼中的图像 2.4 什么是图像特征? 2.5 卷积运算 2.6 利用 ...
- VBS定时关闭软件
用TXT写以下代码另存为VBS格式,代码如下:doset bag=getobject("winmgmts:\\.\root\cimv2")set pipe=bag.execquer ...
- 5. Sersync实时同步
rsync+Sersync数据的实时同步 sersync介绍 1.什么是实时同步 监控一个目录的变化, 当该目录触发事件(创建\删除\修改) 就执行动作, 这个动作可以是 rsync同步 ,也可以是其 ...
- git jenkins 部署java项目
1.Java项目部署基本概述: 1.什么是Java项目? 2.为什么Java项目需要使用Maven编译? 3.手动实现Java项目构建? 4.手动实现Java项目架构图? 源码包 jar包 ...
- Leetcode(1)两数之和
Leetcode(1)两数之和 [题目表述]: 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标.你可以假设每种输入只会对应一 ...
- PHP的陷阱
PHP的陷阱 写代码的时候有个疑惑,那就是数组下标不存在的时候就会挂掉Undefined Index XXXX,这是对的,但是有时候他就不报错,这又是矛盾的. 请看下面的例子: $json_raw = ...
- 基于 HTML5 + Canvas 实现的楼宇自控系统
前言 楼宇自控是指楼宇中电力设备,如电梯.水泵.风机.空调等,其主要工作性质是强电驱动.通常这些设备是开放性的工作状态,也就是说没有形成一个闭环回路.只要接通电源,设备就在工作,至于工作状态.进程.能 ...