pycharm部署django项目到云服务器的详细流程
作者:Akiyama_ 发布时间:2021-05-27 23:32:19
目录
前言
1-下载python3.8压缩包
2-解压缩安装包
3-安装依赖工具
4-安装python3.8
5-修改python2软链接
6-修改yum配置文件
7-配置python
8-检验配置结果
9-上传并部署Django项目
前言
大家想一想,如果要在一台电脑上运行python程序需要些什么工具呢?
显而易见,我们需要在电脑上安装python应用,配置python环境等等。那么如果我们需要在云服务器上运行python程序的话要怎么做呢?相信大家已经想到了,就是照葫芦画瓢,在云服务器上做相同的工作就好了。
1-下载python3.8压缩包
1.1 操作系统
centos7.9 64位
1.2 下载python3.8 安装包
使用如下命令下载python 3.8:
wget https://www.python.org/ftp/python/3.8.0/Python-3.8.0.tgz
如果提示-bash: wget: 未找到命令,需要先使用yum安装wget,命令如下:
yum -y install wget
安装完成后在secure fx可以查看解压包的位置
2-解压缩安装包
2.1 通过以下命令解压缩下载的文件:
tar zxf Python-3.8.0.tgz
2.2 输入cd / 然后再输入ls 可得到如下结果:
说明已经解压成功
3-安装依赖工具
因为编译 Python 源代码需要依赖于很多工具,所以得先准备一下,依次执行以下命令:
yum update -y
yum groupinstall -y ‘Development Tools'
yum install -y gcc openssl-devel bzip2-devel libffi-devel
4-安装python3.8
4.1 进入解压包解压后的文件位置:
在centos中输入:cd /Python-3.8.0
4.2 配置安装路径:
执行如下命令:
1 ./configure prefix=/usr/local/python3 --enable-optimizations
–enable-optimizations是优化选项(LTO,PGO 等)加上这个 flag 编译后,性能有 10% 左右的优化,但是这会明显的增加编译时间。
温馨提示:–enable-optimizations 该语句可能导致之后安装报错:Could not import runpy module 个人建议最好将其删除
原因是:在低版本的gcc版本中带有–enable-optimizations参数时会出现上面问题
gcc 8.1.0修复此问题
4.3 开始安装:
./configure命令执行完毕之后创建一个文件 Makefile, 供下面的make命令使用,执行make install之后就会把程序安装到我们指定的文件夹中去。
2 make && make install
如果出现了Could not import runpy module 先检查有没有按我上面说的删除–enable-optimizations,再者就是应该是安装依赖工具的时候出错了
如果出现如下错误,则接着看下面的解决方法
Error Downloading Packages
文章转自https://www.cnblogs.com/twobrother/p/11577636.html
解决方法如下:
yum出现Error downloading packages错误
错误表现方式:
yum可以list,可以clean cache,但是无法安装,错误提示:
Downloading packages:
Error downloading packages:
libevent-devel-2.0.21-4.el7.x86_64: [Errno 5] [Errno 2] 没有那个文件或目录
libevent-2.0.21-4.el7.x86_64: [Errno 5] [Errno 2] 没有那个文件或目录
错误出现原因:
安装python3修改软链接,没有完全修改导致
[root@duke ~]# mv /usr/bin/python /usr/bin/python2.6.6
[root@duke ~]# ln -s /usr/local/bin/python3.6 /usr/bin/python
[root@duke ~]# vi /usr/bin/yum
将文件头部的
#!/usr/bin/python
改成
#!/usr/bin/python2.6.6
改过之后发现yum可以list,可以clean cache,但是无法安装。
错误解决:
把下载器中的python也修改对应的版本
[root@duke ~]# vi /usr/libexec/urlgrabber-ext-down
将文件头部的
#!/usr/bin/python
改成
#!/usr/bin/python2.6.6
5-修改python2软链接
软链接其实就相当于我们常用的电脑主机的快捷方式
阿里云服务器的centos中会自带一个python2.7.5,而默认的python路径也是python2.7.5,如果要用到我们刚才安装的pyhton3.8的话就要修改软链接。
我们首先查看一下 Python 可执行文件的位置:
which python
然后切换到相应的目录:
cd /usr/bin
查看相关的python信息:
ls -la python*
发现当我们执行python 命令时,系统指向python 2,然后python 2指向python 2.7,所以系统默认使用的python版本仍然是python 2。
首先将python 改名为 python.bak
mv python python2.bak
再次查看python相关信息:
6-修改yum配置文件
进入目录/usr/bin,查看有关yum的文件:
ls -la yum*
使用vi 进入文本编辑器(如果有多个yum配置文件,都要进去修改):
vi yum
点击i进入编辑模式之后将#!/usr/bin/python 改为#!/usr/bin/python2,按ESC退出编辑模式,输入:wq!保存修改退出。
同样进入文件 /usr/libexec/urlgrabber-ext-down 做同样修改。
7-配置python
3、pip3软链接
7.1配置python3软链接
ln -s /usr/local/python3/bin/python3.8 /usr/bin/python
ls -la python*
配置后结果
7.2 配置pip3软链接
ln -s /usr/local/python3/bin/pip3.8 /usr/bin/pip
ls -la pip*
因为python3中是自带pip3的,如果没有的话执行如下步骤就行了
1.安装源
yum -y install epel-release
2.安装pip
yum install python-pip
3.对安装好的pip进行升级
pip install --upgrade pip (注意是两个短横线~~)
如果你打完代码后,再次查看软链接情况发现它在闪烁的话,说明没有链接成功。
这个时候大部分原因是链接的路径有问题,不清楚centos文件路径的同学可以下载securefx来直观地了解文件位置,其中要创建软链接要遵守这个规则 ln -s [源文件] [软链接文件]
8-检验配置结果
在服务器中输入 python --version和pip -V
结果如下:
到了这一步的话,你的python环境已经在服务器上搭建完成了,接下来就是将我们的django项目上传到服务器中。
9-上传并部署Django项目
9.1 将Django打包上传到SecureCRT
先吧自己的Django项目整成压缩包,然后在 SecureFx中新建一个名为Sever的文件夹,将压缩包丢进去,就像这样
依次执行下列语句获取rar解压方法
wget http://www.rarlab.com/rar/rarlinux-x64-5.3.0.tar.gz
tar -xf rarlinux-x64-5.3.0.tar.gz
cd rar
make
rar x test.rar //解压 test.rar 到当前目录
为了后面方便更改代码,这里我们辛苦一点在Pycharm中同步部署我们的Django项目
步骤如下:
1、在“工具(Tools)”菜单中找到“部署(Deployment)”选项,选择子菜单中的“配置(Configuration…)”选项。
2、在部署(Deployment)窗口中点击加号(+)按钮,设置服务器配置的名称和类型(选择SFTP)
3、在配置界面的“连接(Connection)”设置中,分别添加:服务器IP地址、端口(默认22)、服务器中存放源码的目录以及登录服务器的账号名称与密码
提示:完成配置之后,点击“测试SFTP连接(Test SFTP connection…)”按钮进行服务器连接测试,保证配置正确
4、然后,切换到“映射(Mappings)”的设置,选择本地源码所在目录以及服务器上传源码的目录。
5、在选项设置中,我们选择自动将修改内容上传服务器的操作,这里我们可以选择“明确的保存动作(On explicit save action)”。也就是说当我们按下快捷键“Ctrl+S”时,系统会自动上传修改内容到服务器。
6、好了,到这一步你的Pycharm就已经和云服务器连接起来了,你可以在本地修改代码以及在终端运行代码后会自动同步至云服务器上。
来源:https://blog.csdn.net/LJJ12138/article/details/117918706
猜你喜欢
- 阅读上一篇教程:WEB2.0网页制作标准教程(10)自适应高度布局初步搭建起来,我开始填充里面的内容。首先是定义logo图片:样式表:#lo
- 就像我的日志中的地址路径一样,让 index.php?action=one&do=two 变成: ?
- 本文实例讲述了python分支、循环简单用法。分享给大家供大家参考,具体如下:讲程序设计,不得不讲到顺序、分支、循环。顺序就是从上到下运行代
- 前文学习:python数据类型: python数据结构:数据类型.python的输入输出: python数据结构输入输出及控制和异常.pyt
- 一、了解seleniumSelenium是一个用于测试网站的自动化测试工具,支持各种浏览器包括Chrome、Firefox、Safar等浏览
- http://www.cppcns.com/shujuku/mysql/283231.html 也可以参照这个8.0
- 本文实例为大家分享了python实现发送QQ邮件的具体代码,供大家参考,具体内容如下东西比较简单,简单讲一下,直接贴代码了,其他邮箱都类似。
- DQN算法是DeepMind团队提出的一种深度强化学习算法,在许多电动游戏中达到人类玩家甚至超越人类玩家的水准,本文就带领大家了解一下这个算
- 前言在上一篇文章PyG搭建GCN前的准备:了解PyG中的数据格式中,大致了解了PyG中的数据格式,这篇文章主要是简单搭建GCN来实现节点分类
- 方法1:1.安装requests_toolbelt依赖库#代码实现def upload(self): login_
- 如下所示:<!doctype html><html lang="en"> <head>
- 1.说明redis作为一个缓存数据库,在各方面都有很大作用,Python支持操作redis,如果你使用Django,有一个专为Django搭
- 近日闲来无事,总有一种无形的力量萦绕在朕身边,让朕精神涣散,昏昏欲睡。可是,像朕这么有职业操守的社畜怎么能在上班期间睡瞌睡呢,我不禁陷入了沉
- Guide to the Section 508 Standards for Electronic and Information Tech
- 本文实例为大家分享了python和pip安装教程,供大家参考,具体内容如下1.安装python第一步,windows下面的Python安装一
- 有用的符号:| 竖杠后的字符会被原样输出 · 点表示下一级的所有字符都会被原样输出,不再被识别。(就是|的升级版,实现批量) include
- 实际上face_recognition这个项目尤其是dlib更适用于Linux系统。经过我的测试,在性能方面,编译同样规格的项目,这个工具在
- 对于Python内置函数sorted(),先拿来跟list(列表)中的成员函数list.sort()进行下对比。在本质上,list的排序和内
- 前言pytest是一款强大的python自动化测试工具,可以胜任各种类型或者级别的软件测试工作。pytest提供了丰富的功能,包括asser
- 本文实例讲述了python实现通过pil模块对图片格式进行转换的方法。分享给大家供大家参考。具体分析如下:python的pil模块相当的智能