超详细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 ...
随机推荐
- oracle学习笔记(九) SQL常用函数说明以及使用
SQL常用函数说明以及使用 以下补充以下常用的函数,更多的请看oracle函数API文档 to_char to_char(8.58,'9.99') to_char(8.50,'9.00') to_ch ...
- WPF TextBox绑定Int类型的属性
TextBox双向绑定int属性,清空输入框时Setter方法未触发. 我的解决方案: 1.属性置为int?: 2.xmlns:sys="clr-namespace:System;assem ...
- java基础(29):JDBC、DBUtils
1. JDBC 1.1 JDBC概述 JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问 ...
- PlayJava Day003
今日所学: /* 2019.08.19开始学习,此为补档. */ ①char:只能有一个字段.字符:' ' ②二进制:0000 0000 最后一位为0就不算,为1代表20. 如25为:0001 100 ...
- ES6复制拷贝数组,对象,json数组
扩展运算符的应用spread打散数组[...] (1)复制数组 数组是复合的数据类型,直接复制的话,只是复制了指向底层数据结构的指针,而不是克隆一个全新的数组. const a1 = [1, 2]; ...
- Qt Creator单步调试快捷键F10经常失灵问题
使用Qt Creator调试程序的时候经常会遇到F10单步调试快捷键不响应的问题. 打开调试菜单如下:有两个快捷键为F10的调试菜单项,于是快捷键冲突了! 解决办法:废话不说,直接上图 由于Start ...
- 重启电脑 wamp图标是橙色(未变绿)
记录一个错误: 修复系统漏洞后,重启电脑,wamp没有开机自启动,手动启动后发现,图标是大红色变成了橙色,也就是服务未完全启动(1/2)状态. ??? 但是我其实也不知道是哪个服务(Apache/My ...
- [b0020] python 归纳 (六)_模块变量作用域
test_module2.py: # -*- coding: utf-8 -*-"""测试 模块变量的作用域 总结:1 其他模块的变量,在当前模块的任何地方,包括函数都可 ...
- C学习笔记(4)--- 指针的应用(第一部分)
1.指针(pointer)概念: 指针是一个变量,其值为另一个变量的地址,即,内存位置的直接地址.就像其他变量或常量一样,您必须在使用指针存储其他变量地址之前,对其进行声明.指针变量声明的一般形式为: ...
- C++标准库删除字符串中指定字符,比如空格
参见:https://zh.cppreference.com/w/cpp/algorithm/remove 使用 erase 和 remove 配合. #include <algorithm&g ...