超详细Pycharm部署项目视频教程
在实际的工作中,不管你是开发、测试还是运维人员,都应该掌握的一项技能就是部署项目,简单说就是把项目放到服务器中,使其正常运行。今天猪哥就以咱们的微信机器人项目为例子,带大家来部署一下项目。本文将会详细介绍从服务器的选购、Python3.7的安装、使用Pycharm上传和启动项目这几个方面,让零基础的同学也能学会将项目部署到服务器中。
视频教程链接:https://v.qq.com/x/page/w0868dweirq.html
一、环境介绍
二、购买云主机
三、安装python3.7
四、使用Pycharm部署项目
五、总结
一、环境介绍
先说下我开发环境: MacOS 10.14.1 + Pycharm 2019.1 + Python3.7
这里需要说明一下在实际的开发工作中一般我们的 开发环境、测试环境、生产环境 编程语言的版本需要保持一致,比如统一使用Python3.7版本,这样可以避免很多因为版本不一致而导致的问题。
二、购买云主机
目前国内云服务器可谓琳琅满目,国内外巨头都纷纷涉足云服务这块,首先全球云服务老大亚马逊(AWS)占到全球云服务市场的近47.1%,而阿里云(aliyun)凭借着资金雄厚、业务产品线广占到了国内云服务市场的47.6%,当之无愧的国内老大,所以我们这里就选择阿里云主机作为我们此次教程的云服务器。
1.注册账号
如果你之前没有阿里云账号的话可以在其官网(https://www.aliyun.com/)或手机App中注册。
需要注意的是 如果你是一名在校大学生,那你可以先进行学生认证,认证通过之后购买产品会有很大力度的优惠哦~
我们可以看到一个轻量级的服务器一年原价是1338元,而学生价才114元,优惠力度还是蛮大的!
2.购买云主机
阿里云产品众多如:云服务器ECS、云数据库RDS、负载均衡SLB和对象存储OSS、内容分发CDN等等,满足各种生产环境所需。
我们这种小型项目只需要购买云服务器ECS就可以,他就相当于一个电脑主机。而购买云主机就像我们买电脑一样,需要根据自己的实际用途来选择配置。因为我们这次的项目只是用于个人开发测试,所以建议选择最低配置(就这个项目而言足够)! 如果实际测试中发现配置不够的话可以再自由升级,这样避免资源浪费!

选择系统,猪哥选择的是CentOS 7.6 64位,系统可以随时更换!




三、安装python3.7
一般的linux系统都会默认安装python2.7,而现在python3已经大行其道,我们的项目也是使用python3的,所以我们来给云主机安装python3.7。
1.登录云主机
在我们购买完毕之后,我们可以查看一下云主机的一些信息,然后登录一下试试,第一次点击远程链接后会给一个6位数字的远程链接密码(这个密码只是在控制台登录需要,ssh连接是不需要的)。
填写之前给你的6位数字远程链接密码,忘记可在上面修改。
在输入了6位远程链接密码后,我们选择登录root用户,然后输入root用户的密码。
如果忘记root密码可在控制台重置密码,重置完记得重启云主机!
2.安装python3.7
我们先检查一下云主机目前的python版本,使用命令:python --version,查看:
提醒大家千万不要将python2删除,因为有些系统功能依赖python2,所以我们只要添加python3就可以。
首先安装依赖包,centos里面是-devel,如果在ubuntu下安装则要改成-dev,依赖包缺一不可
sudo yum -y groupinstall "Development tools"
sudo yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel
然后下载python3.7的安装包(目前更新到了python3.7.3)
wget https://www.python.org/ftp/python/3.7.3/Python-3.7.3.tar.xz
解压下载包
tar -xvJf Python-3.7.3.tar.xz
编译安装
cd Python-3.7.3
./configure --prefix=/usr/local/bin/python3
sudo make
sudo make install
创建软连接
ln -s /usr/local/bin/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/bin/python3/bin/pip3 /usr/bin/pip3
最后输入命令python3 --version检查一下是否安装成功
3.pip配置国内源
如果你使用的是阿里云主机,那么系统已经默认配置了阿里云源,所以此步骤省略了
四、使用Pycharm部署项目
虽然Python的优秀编辑器很多,但是Pycharm绝对是他们之中的佼佼者,在我们实际工作中更是离不开它,现在我们来介绍一下如何使用Python将项目部署到云服务器中,整个过程都只使用Pycharm并不会借助其他工具!
1.上传项目
如果你是使用猪哥的微信机器人项目请先更新项,项目地址:https://github.com/pig6/wxrobot
首先我们在云服务器上创建一个目录,用于放置项目文件,使用命令mkdir /data/wxrobot 创建项目,在实际工作中我们会将项目相关的东西放在/data
目录中。
注意只有Pycharm专业版才具有部署的功能,社区版(无需破解)是没有此功能。
添加一个配置,名字随意


所有都配置好了之后,我们来上传项目

2.下载项目必须库
pip3 install wxpy

3.启动项目
在命令行中执行下面的命令即可
cd /data/wxrobot
nohup python3 robot.py 2>&1 | tee &
如果你想同时保存日志信息可以在tee后面加日志文件名
五、总结
虽然这期教程中使用的是微信机器人的项目,但是部署服务器的流程都是一样的,你可以使用相同的方法部署其他项目。
这次的教程比较详细,零基础同学绝对没问题,当然在你们部署过程中肯定会遇到一些问题,猪哥在录制视频中也遇到很多小问题,所以如果你遇到问题可以在Python新手交流群中向我提问或寻求群里其他大佬的帮助,加群请加猪哥微信:it-pig66,好友申请格式:加群-xxx,不然我不知道你要干嘛!
超详细Pycharm部署项目视频教程的更多相关文章
- Spring Boot(IDEA,Gradle)超详细用户管理项目(一)——Hello World
1.构建工具的配置(Gradle):自定义-所有设置:构建.执行.部署-构建工具-Gradle: 设置Gradle用户主目录:(该目录相当于仓库,gradle将下载所需依赖到此目录下),此目录下可新建 ...
- Spring Boot超详细用户管理项目(零)——开发前准备
开始前的软件准备:(编写中:未完成) 使用软件介绍: Java版本:Java SE 11(LTS) 开发工具:IDEA(2020.3版本) Linux系统: 数据库: Java 版本:Java SE ...
- Linux系统部署JavaWeb项目(超详细tomcat,nginx,mysql)
转载自:Linux系统部署JavaWeb项目(超详细tomcat,nginx,mysql) 我的系统是阿里云的,香港的系统,本人选择的是系统镜像:CentOS 7.3 64位. 具体步骤: 配置Jav ...
- 超详细动手搭建一个Vuepress站点及开启PWA与自动部署
超详细动手搭建一个Vuepress站点及开启PWA与自动部署 五一之前就想写一篇关于Vuepress的文章,结果朋友结婚就不了了之了. 记得最后一定要看注意事项! Vuepress介绍 官网:http ...
- 超详细从零记录Hadoop2.7.3完全分布式集群部署过程
超详细从零记录Ubuntu16.04.1 3台服务器上Hadoop2.7.3完全分布式集群部署过程.包含,Ubuntu服务器创建.远程工具连接配置.Ubuntu服务器配置.Hadoop文件配置.Had ...
- Pycharm自动部署项目
Pycharm自动部署项目 大家好呀,又有几天不见各位了.断更了几天,给大家说声抱歉.清明节大家都挺忙的,有扫墓祭祖的,也有趁小长假去游玩的. 所以,在节后,更新也会照常进行,继续给大家分享本人的一些 ...
- Nginx实战部署常用功能演示(超详细版),绝对给力~~~
前言 上次分享了一些开发过程中常用的功能,但如果到真实环境中,其实还需要一些额外的配置,比如说跨域.缓存.配置SSL证书.高可用等,老规矩,还是挑几个平时比较常用的进行演示分享.上篇详见Nginx超详 ...
- 【SpringMVC】使用Myeclipse创建SpringMVC项目【超详细教程】
之前一直是使用Eclipse创建Web项目,用IDEA和MyEclipse的创建SpringMVC项目的时候时不时会遇到一些问题,这里把这个过程记录一下,希望能帮助到那些有需要的朋友.我是用的是MyE ...
- 一个基于TCP/IP的服务器与客户端通讯的小项目(超详细版)
1.目的:实现客户端向服务器发送数据 原理: 2.建立两个控制台应用,一个为服务器,用于接收数据.一个为客户端,用于发送数据. 关键类与对应方法: 1)类IPEndPoint: 1.是抽象类EndPo ...
随机推荐
- Koa + GraphQL 示例
初始化项目 创建 graphql-example 文件夹进入后初始化一个 package.json 文件. $ mkdir graphql-example && cd $_ $ yar ...
- wpf 两个自定义控件
wpf 两个自定义控件 一个是IP控件,一个滑动条.先看下效果图 IPControl 1.实际工作中有时需要设置IP信息,就想着做一个ip控件.效果没有window自带的好,需要通过tab切换.但也能 ...
- 【OOM】解决思路
一.什么是OOM? OOM就是outOfMemory,内存溢出!可能是每一个java人员都能遇到的问题!原因是堆中有太多的存活对象(GC-ROOT可达),占满了堆空间. 二.怎么解决? 1.拿到内存溢 ...
- springboot服务的一些问题
一: springboot踩坑记--springboot正常启动但访问404; 1. spring boot的启动类不能直接放在main(src.java.main)这个包下面,把它放在有包的里面就可 ...
- JS是解释型还是编译型语言?
解释型和编译型语言 解释型语言 解释型语言是对代码进行一句一句的直接运行,在程序运行期间,使用解释器动态将代码解释为机器码,再运行. 编译型语言 编译型语言是需要使用编译器先对代码进行编译为机器码,再 ...
- linux环境下安装selenium+chrom+chromdriver.exe
原文:https://blog.csdn.net/yoyocat915/article/details/80580066 原文:https://blog.csdn.net/hanxue6898/art ...
- [b0041] python 归纳 (二六)_多进程数据共享和同步_事件Event
# -*- coding: utf-8 -*- """ 多进程 同步 事件multiprocessing.Event 逻辑: 子线程负责打印,会阻塞, 等待主进程发出控制 ...
- [20190522]How to get dump or list parameters set at session level.txt
[20190522]How to get dump or list parameters set at session level.txt 1.环境:SCOTT@book> @ ver1PORT ...
- kettle教程---增量更新
以下操作都在5.0.1版本下进行开发,其余版本可以进行自动比对 在平时工作当中,会遇到这种情况,而且很常见.比如:增量抽取(每隔2个小时抽取截至到上次抽取时间的记录) 一.操作前提: 存在3张表,源表 ...
- 自定义MVC二
1. 什么是MVC MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写, 它是一种软件设计典范,用一种业务逻辑.数据. ...