drf项目部署到腾讯云

1.部署准备

1.腾讯云服务器(Ubuntu 16.04系统)

在购买了腾讯云服务器成功之后,腾讯云的站内信会将系统的登录名:Ubuntu,以及登录初始密码发给你。

2.本地需要的软件工具

1. Xshell 远程操作服务器实例

通过Xshell,打开软件→【文件】→【新建】→【新建会话,输入云服务器的公网ip,用户名:ubuntu,登录初始密码】即可连接到云服务器。

为了方便安装包,从用户ubuntu切换为root用户:

sudo -i

2. filezilla 用于将打包成zip包的项目压缩文件包,上传到云服务器的  /home/ubuntu目录下

3.Navicat for Mysql 用于同步本地和服务器的数据库

3.本地项目准备

1.django项目

1.settings.py配置

1.settings.py中配置公网ip才允许访问:

ALLOWED_HOSTS = [‘公网ip‘]

2.settings.py中追加静态文件路径配置代码:

STATIC_ROOT=os.path.join(BASE_DIR,‘static‘)
STATICFILES_DIR=[os.path.join(BASE_DIR,‘static‘),] #这一条在开发阶段就可以添加

3.settings.py中关闭开发调试模式:

DEBUG = False

2.生成requirements.txt

pip freeze >requirements.txt

3.将chaoyuecun项目打包成zip包

2.同步数据库

1.在云服务器安装Mysql数据库

1.服务器安装Mysql5.7(目前默认安装的Mysql就是5.7版本的)

apt-get install mysql-server
y
#设置数据库密码,跟本地的数据库密码设置为相同的就可以,省着在项目的settings中麻烦再特意做修改了
apt-get install mysql-client
apt-get install libmysqlclient-dev
y

2.修改服务器数据库配置文件,使之允许远程连接

vim /etc/mysql/mysql.conf.d/mysqld.cnf
# 英文输入环境下,敲 i 键,进入插入模式
#上下左右键移动光标,注释掉 bind-address = 127.0.0.1
#英文输入环境下,敲Esc键,输入:wq 保存退出

3.设置远程连接密码

mysql -u root -p
#输入密码(不显示),登录mysql
GRANT ALL PRIVILEGES ON *.* TO ‘root‘@‘%‘ IDENTIFIED BY ‘123456‘ WITH GRANT OPTION;
flush privileges;
quit;
#重启mysql服务
/etc/init.d/mysql restart

2.使用Navicat,将本地数据库传到腾讯云服务器

1.建立连接

连接本地:点击左上角控制面板的【连接】→选择【MySQL】→随便取个连接名字,测试连接,提示连接成功即可。

连接服务器:点击左上角控制面板的【连接】→选择【MySQL】→随便取个连接名字,输入云服务器的公网pi,用户名:root,密码123456,点击测试连接,提示连接成功即可。

2.传输数据

选择本地要传输到服务器的数据库,然后选择数据库连接,点击开始,确定,然后等待传输完成,关闭。

3.查看是否上传成功

mysql -u root -p
#输入密码
show databases;
#查看本地数据库是否上传上来了
quit;

4.修改服务器数据库配置文件,使之不允许远程连接

vim /etc/mysql/mysql.conf.d/mysqld.cnf
# 英文输入环境下,敲 i 键,进入插入模式
#上下左右键移动光标,将注释掉的 bind-address = 127.0.0.1 恢复
#英文输入环境下,敲Esc键,输入:wq 保存退出
#重启mysql服务
/etc/init.d/mysql restart

3.上传项目并且运行

1.安装python3.6

因为腾讯云的Ubuntu16.04默认安装的python版本是2.7和3.5,而在本地开发时,用的是python3.6,所以需要下载安装python3.6

1.相关依赖,防止因为缺少依赖报错,安装一遍保平安:

apt-get install openssl
apt-get install libssl-dev
y
apt-get install libc6-dev gcc
y
apt-get install -y make build-essential zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm tk-dev 

2.安装python3.6

add-apt-repository ppa:jonathonf/python-3.6
#回车
apt-get update
apt-get install python3.6
y

3.将默认的Python 链接指向Python3.6

cd /usr/bin
rm python
ln -s python3.6 /usr/bin/python
python -V

2.项目上传

1.使用FileZilla上传项目的zip包到ubuntu目录下

2.解压

cd /home/ubuntu
ls
unzip gg.zip

3.配置虚拟环境

1.创建虚拟环境

#安装虚拟环境
apt-get install python3-venv
y
#在当前目录下,创建一个python3.6的虚拟环境,取名为env36
python3 -m venv env36
. env36/bin/activate
#进入虚拟环境
#退出虚拟环境 deactivate

2.在虚拟环境中安装依赖库

cd gg
pip3 install -r requirements.txt

4.测试运行项目

1.运行项目:

python manage.py runserver 0.0.0.0:8000

2.在安全组打开8000端口

3.浏览器访问:

http://公网ip:8000/xadmin/

4.退出运行状态:

Ctrl键+C键

4.安装和配置uwsgi

1.安装uwsgi到真实(非虚拟环境)环境下

#退出虚拟环境
deactivate
cd ..
apt install python3-pip
y
pip3 install uwsgi

2.使用uwsgi启动项目

1.运行项目

uwsgi --chdir /home/ubuntu/gg --home /home/ubuntu/env36 --http :8000 --module gg.wsgi

2.浏览器访问:

http://公网ip:8000/xadmin/

3.退出运行状态:

Ctrl键+C键

3.配置uwsgi

1.创建ini文件

mkdir gg_uwsgi #创建一个目录,专门存放uwsgi的相关文件
cd gg_uwsgi/
vim gg.ini #创建一个ini文件

2.编辑ini文件

进入编辑模式:

i #进入编辑模式

输入内容:

[uwsgi]
chdir = /home/ubuntu/gg
home = /home/ubuntu/env36
module = gg.wsgi:application

master = True
processes = 4
harakiri = 60
max-requests = 5000

socket = 127.0.0.1:8000

uid = 1000
gid = 2000

pidfile = /home/ubuntu/gg_uwsgi/master.pid
daemonize = /home/ubuntu/gg_uwsgi/gg.log
vacuum = True

保存退出

Esc键+输入:wq+回车 #保存并退出

4.通过ini启动uwsgi

1.执行通过ini启动项目命令:

uwsgi --ini /home/ubuntu/gg_uwsgi/gg.ini

2.执行检验是否启动了多线程:

ps -aux | grep uwsgi

uwsgi --reload /home/chaoyuecun_uwsgi/master.pid #重启
uwsgi --stop /home/chaoyuecun_uwsgi/master.pid #停止

原文地址:https://www.cnblogs.com/xuepangzi/p/11094526.html

时间: 2024-10-31 10:35:54

drf项目部署到腾讯云的相关文章

个人博客项目部署到腾讯云记录

坑1.pip install uwsgi安装uwsgi到系统环境(非虚拟环境)执行 uwsgi --http :8001 --module myblog.wsgi时报找不到uwsgi命令 解决:pip 安装的,命令文件放在/usr/local/python3.7/bin/uwsgi,需要添加到系统可找到的路径下,添加软连接:ln -s /usr/local/python3.7/bin/uwsgi  /usr/bin/uwsgi 坑2.解决问题1后执行uwsgi --http :8001 --mo

Django服务器部署到腾讯云

+ 配置腾讯云的服务器 + 配置的系统是Ubuntu Server 16.04.1 LTS 64位 + 登录后界面如图: - 之后进行django的安装**注意版本号要和你在本地开发的一致** - 使用screen进行后台的django项目的运行.**注意runserver后设置:0.0.0.0:端口号** + 使用PyCharm进行远程连接腾讯云服务器 + Tools-->Deployment-->config呈现下面的界面 - - 选择**sftp** -  - 在这里设置你的IP地址,然

将禅道部署到腾讯云linux 上 (不安全)

部署环境 :linux(腾讯云),用到了 xshell   FileZilla 使用禅道集成环境lampp直接部署 1.首先下载 lampp j集成环境包.https://sourceforge.net/projects/xampp/files/XAMPP%20Linux/7.0.15/xampp-linux-x64-7.0.15-0-installer.run/download 2.将文件放到/opt  根目录下 3.运行 ./ xampp-linux-x64-7.0.15-0-install

腾讯云部署自己项目步骤

最近,自己用Java WEB完成了一个网站,然而,不知道如何部署到云服务器上.百度了很多,也没有完整的,后来自己摸索,完成了部署.本文,将介绍如果将web项目部署到腾讯云服务器上. 在这里呢,很多人就要问了,为什么是腾讯云呢?其实很简单,腾讯云有一个学生认证,腾讯提供0元购买一个cn域名,1元购买云服务器.简直是学生党的福利,虽然服务器是入门级的,但是绝对够用了. 接下来,开始教程! 一.服务器和域名的购买 登陆腾讯云(网址自行百度).如果你是学生,强烈建议你和我一样完成学生认证,土豪请无视这一

小程序应用的Python服务器部署高配,依然是腾讯云秒杀阿里云!

上一篇文章,“小程序创业最低配置部署,腾讯云折扣秒杀阿里云!”介绍了小程序项目启动时的最低配置服务器选择,但当项目良好发展时,还是要把服务器配置调整到标准水平,承受住日益增长的流量访问. 随着Python的流行,直接用Python来部署Web服务器变成一个需求.但Python自带的Flask或传统的DJango都是基于阻塞io模型实现,性能上往往达不到生产环境大规模跑用户的需求.Tornado在底层io处理机制上和django以及flask有着根本的区别,采用了非阻塞io模型,也特别适合小程序用

Hexo 博客 之 腾讯云部署过程

写在前面 Hexo 博客搭好了有差不多两周时间了,这期间走了很多弯路,跳了很多坑.一些坑自己 bing 到了答案,找到了解决方法,一些坑则是自己摸索出来的解决方法.现在准备写几篇关于搭建流程.搭建过程中遇到的问题和解决方法.俗话说得好,好记性不如烂键盘嘛. 暂时准备写三篇关于 Hexo 博客搭建的博文: 关于 Hexo 博客 腾讯云部署过程 关于 Hexo 博客 NexT 主题的美化插件设置 点击这里 关于 Hexo 博客 添加域名映射和 https 点击这里 本文介绍 本博客是关于 Hexo

腾讯云部署golang flow流程,vue.js+nginx+mysql+node.js

这次总算把js-ojus/flow的ui部署到腾讯云上,比较吐槽的就是,为啥这么复杂,vue.js前后端分离,比golang编写的部署方面复杂几万倍.真是浪费人生啊. golang+sqlite写的东西,直接传到任意文件里,运行即可.--当然,适用于小型的东西. vue.js,要安装node.js环境,要nginx环境,要配置nginx跨域:要安装mysql数据库,要配置用户.体验地址: http://111.230.181.182:8080 有问题多多交流啊:qq504284 微信hotqin

如何在腾讯云上搭建一个人力资源Saas

版权声明:本文由ihr原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/180 来源:腾云阁 https://www.qcloud.com/community 在互联网盛行的时代,车联网,物联网相关的字眼随处可见.为了方便企业在员工管理上提供更为快捷有效地方式, ihr是基于当下主流企业人才管理方式及员工普及的社交方式微信的一个开放性平台.它包含企业端的招聘管理.员工管理,其中招聘管理又包含了面试通知邀请.到Offer发放

SpringBoot项目部署

项目背景 个人博客:http://www.huangyichun.cn/blog/8 采用SpringBoot开发的个人博客,部署到腾讯云服务器上,服务器系统为ubuntu16.04,其中数据库采用Mysql,项目由maven构建而成. 部署流程 安装mysql数据库 //首先执行下面3个命令 sudo apt-get install mysql-server sudo apt install mysql-client sudo apt install libmysqlclient-dev //