腾讯云CentOS+Django+Python+Nginx+Uwsgi 部署(自用,简单记录)

说明:本人是做前端研发的,最近研究了后台Django框架,并部署到服务的整个流程,为了避免以后忘记,写一个简单的文档记录下。

第一:购买服务器

我是在腾讯云购买的最便宜,配置最低的那种,主要是以学习为主。就买了一个月的:62.5。

第二:登录到终端,安装软件

我安装也是按照网上的教程来的,俗称网络搬运工

1:Centos 安装Python3

借鉴文章:centos7 安装python3。文章中编译安装前 先执行命令:yum install libffi-devel -y (解决:ModuleNotFoundError: No module named '_ctypes')。我安装Python3的版本和方式略有不同:Python版本是用的:3.7.3;方式是:先下载安装文件Python-3.7.3.tgz,再安装的。

2:Centos 安装MySql

借鉴文章:centos7+django+python3+mysql+阿里云部署项目全流程。这里我只借鉴安装MySql这一部分。

我的操作流程
  • 下载mysql源安装包:wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
  • 安装mysql源:yum localinstall mysql57-community-release-el7-8.noarch.rpm
  • 安装mysql源:yum install mysql-devel
  • 安装MySQL(总计851M,翻墙):yum install mysql-community-server
  • 执行命令:pip3 install mysqlclient
  • 启动MYSQL服务:systemctl start mysqld
  • 查看MYSQLd的启动状态:systemctl status mysqld
  • 开机启动:systemctl enable mysqld
  • 修改root本地登录密码:
  • 获取密码:grep 'temporary password' /var/log/mysqld.log
  • 进入mysql:mysql -uroot -p
  • 设置密码:set password for 'root'@'localhost'=password('你的数据库密码');
  • 创建数据库(要和你的项目数据对应上):create database testdjango;(可能出中文问题)
  • 创建数据库:create database 数据库名 character set utf8 collate utf8_general_ci;
  • 使用数据库:use testdjango;
  • 查看当前数据库:show databases;
  • 删除数据库:drop database 数据库名;

3:PIP安装一些软件

这一步就比较简单了,就是pip安装。

我的pip安装

借鉴文章:CentOS7下部署Django+uWSGI+Nginx。这里我只借鉴pip安装这一部分。

  • 执行命令:pip3 install uwsgi
  • 验证:uwsgi --version 我的版本是:2.0.18
  • 执行命令:pip3 install django
  • 验证:django-admin help
  • 执行命令:yum install nginx
  • 验证:nginx -V
  • 到这里相关软件都安装完毕了
  • 执行命令:nginx
  • 用浏览器打开IP,显示 Welcome to nginx on Fedora 代表nginx启动成功了。

第三:修改对应配置文件

1:修改/etc/nginx/目录下的nginx.conf文件。 修改如下

  • listen 8099;(8099是自定义端口号,你的自己设置,后边请求的时候就是用的这个端口)
  • server_name xxx.xxx.xxx.xxx;(腾讯云上的公网IP地址)
  • location /{};(大括号里添加两行:include uwsgi_params; uwsgi_pass 127.0.0.1:8000;,端口号8000也是自己设置的,要和项目中uwsgi.ini中的一致)
  • 至此nginx就配置完毕了。

2:新建Django项目,配置uwsgi.ini 文件。

借鉴文章:uwsgi服务启动(start)停止(stop)重新装载(reload)。同时在项目根目录下,也就是和manage.py的同级目录,创建uwsgi_params文件,具体内容:Nginx。

3:启动服务

  • 切换到项目更地址,执行:uwsgi --ini uwsgi.ini
  • 执行:nginx

4:admin后台样式消失

借鉴文章:Django+Nginx+uWSGI部署到服务器admin后台样式消失

第四:总结

网上类似的教程很多,坑也不少,不过总有一款适合自己的。我也是初次接触后端的东西,遇到不少坑,大家多查查资料,多尝试下总有办法解决的。

  • 远程服务器创建数据库,项目根目录下
  • 执行命令:python manage.py makemigrations
  • 执行命令:python manage.py migrate
  • 开启uwsgi服务
  • 执行命令:ps -ef|grep uwsgi
  • 执行:uwsgi --ini uwsgi.ini
  • 开启nginx服务
  • 执行命令:ps -ef|grep nginx
  • 执行命令:nginx
  • 停止nginx服务:pkill -9 nginx
  • 注意:uwsgi下的uwsgi.pid的值要和执行命令:ps -ef|grep uwsgi的一样

转载于:https://juejin.im/post/5cafe851f265da035e211425

腾讯云CentOS7.2+Django2.2+Python3.7+Nginx+Uwsgi 初学者部署教程相关推荐

  1. 腾讯云CentOS7 LAMP(linux的apache MariaDB php)yum方式部署

    服务器初始化配置过程 1创建新的用户 2配置用户的ssh秘钥 SecureCRT的几种登录方法 1 使用密码通过ssh登陆 11 在ssh的配置文件中找到 12 加入登陆限制 13 然后在etcssh ...

  2. 腾讯云CentOS7运行基于SSM的个人博客----第三节:使用Dokcer安装JDK、Tomcat环境

    腾讯云CentOS7运行基于SSM的个人博客----使用Dokcer安装JDK.Tomcat环境运行SSM的个人博客项目 第一节: 更新yum源,安装Dokcer容器 第二节: 使用Dokcer安装M ...

  3. 2021使用腾讯云CentOS7.6搭建Terraria泰拉瑞亚服务器

    2021使用腾讯云CentOS7.6搭建Terraria泰拉瑞亚服务器 纯净档(还没研究出其他的) 适合与朋友玩 1. 前期准备 一台云服务器(本章使用的为1核2G的腾讯云服务器) PuTTY 2.设 ...

  4. 阿里云、腾讯云centos7安装mysql

    阿里云.腾讯云centos7安装mysql 1.下载 2.解压与准备 3.安装 4.配置 4.1配置数据库 4.2查看默认密码 4.3启动mysql 4.4设置密码 5.开启远程登录 5.1开放330 ...

  5. 腾讯云Centos7 python3.6升级到python3.8.1

    最近想要学习Ai错别字算法,自己的电脑运行有特别慢,特意斥巨资花了800大洋在腾讯云买了一台服务器(一个月GPU,真的贵,伤不起) 想要安装Python3.8.1,但是原来有了python2.7和py ...

  6. 腾讯云centos7搭建javaweb服务器(本人亲自经历,详细)

    首先声明,这是本人亲自搭建成功的经历,亲测有效,****(此处和谐)网上好多在云服务器上搭建javaweb的教程,好多都是各种抄的或者若干年之前的,真的是被坑惨了!废话不多说,下面直接上干货!步骤很详 ...

  7. 腾讯云安装mysql_详解腾讯云CentOS7.0使用yum安装mysql及使用遇到的问题

    背景: 今天才申请了腾讯云+校园计划的1元服务器,安装了Centos7.0,在安装MySQL的时候,使用yum list | grep mysql 来查找yum源中是否有mysql,结果如下: [ro ...

  8. 腾讯云centos7.5安装ClamAV杀毒软件

    今日登陆腾讯云发现了一些安全事件提醒 点击***拦截***后 提示要单独购买腾讯云的WEB应用防火墙,想了想还是算了,自己装个杀毒软件就得了:通过查询发现一个博客中推荐ClamAV这款杀毒软件,就着手 ...

  9. 腾讯云centOS7手动搭建LAMP并上传TP5项目

    查看centOS版本命令: cat /etc/redhat-release 步骤1:登录 Linux 实例(此处利用putty登录) 步骤2:安装 Apache 执行以下命令,安装 Apache. y ...

最新文章

  1. python与excel表格-超简单:用Python让Excel飞起来
  2. Longest Common Substring
  3. 一文整理深度学习【调参小技巧】
  4. SQLServer数据库(二)
  5. 国外的幼儿数学竟然这样出题?来测测你的孩子都会做吗?
  6. dpkg-buildpackage: error: debian/rules binary subprocess was killed by signal 2
  7. mac版 SimHei添加教程
  8. Tbschedule源码通读
  9. 读书笔记《蛤蟆先生去看心理医生》
  10. 北大青鸟 当当网网 js 上机作业
  11. 英语不好学计算机特长,指导:英语学不好,是因为你没养成这些好习惯
  12. css中的counter计数器
  13. [HCTF 2018]WarmUp1PHP 代码审计
  14. 通达信VCP形态选股公式,憋了好几天才写出来
  15. 终于放假咯~寒假规划
  16. 怎么把cad做的图分享给别人_怎么将CAD图转换
  17. 阿里推出新品牌“瓴羊”,致力成为“数字化领头羊”
  18. 23种设计模式——工厂模式+适配器模式实战
  19. 海南企业成功研发我国第三代防伪技术
  20. devServer和dev的区别,及vue代理接口的使用

热门文章

  1. 这 3 个字是未来发展关键,不重视的企业,正在被淘汰
  2. ​他被称为印度“ IT 大王”,富可敌国,却精打细算如守财奴
  3. 任务队列,消息队列和rpc的区别是什么?
  4. 为所有PHP-FPM容器构建单独的NGinx Dock镜像
  5. struct ifconf和struct ifreq,获取网线插入状态
  6. @Conditional派生注解
  7. Struts2中导入外部xml文件出现Included file cannot be found错误!
  8. 9-7NOIP模拟赛总结
  9. 51nod 最大M子段和系列
  10. WebSocket 网页聊天室的实现(服务器端:.net + windows服务,前端:Html5)