云服务器部署Django项目
前言
实例配置 腾讯云标准型S2 - 1核 2G
操作系统 CentOS 7.6 64位
参考资料
CentOS7下部署Django项目详细操作步骤
CentOS7安装MySQL57遇到的问题
Centos7+mysql57+python3安装过程中踩过的坑
一、更新系统软件包
yum update -y
yum update 更新系统软件包同时也升级软件和系统内核
yum upgrade 只更新系统软件包
二、安装Python3
1.安装依赖
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make libffi-devel -y
2.下载
wget https://www.python.org/ftp/python/3.7.6/Python-3.7.6.tgz
3.解压
tar -zxvf Python-3.7.6.tgz
4.安装
cd Python-3.7.6/ # 进入文件夹
./configure --prefix=/usr/local/python3 --with-ssl # 配置安装位置
make&&make install # 编译并安装
5.建立软链接
ln -sf /usr/local/python3/bin/python3.7 /usr/bin/python3
ln -sf /usr/local/python3/bin/pip3.7 /usr/bin/pip3
6.升级pip3
pip3 install --upgrade pip
7.查看安装情况
python3 -V
pip3 -V
8.安装uwsgi
pip3 install uwsgi # 安装
ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi # 建立软链接
9.安装virtualenv
pip3 install virtualenv # 安装
ln -s /usr/local/python3/bin/virtualenv /usr/bin/virtualenv # 建立软链接
10.创建虚拟环境
cd /data/ # 切换路径
virtualenv --python=/usr/bin/python3 django_env # 创建虚拟环境
12.启动虚拟环境
cd /data/django_env/bin # 切换路径
source activate # 启动虚拟环境
命令行前缀变成这样就是成功进入虚拟环境
(django_env) [root@VM-16-3-centos bin]
13.虚拟环境内安装django和uwsgi
pip3 install django==3.0.3 # 安装指定版本django
pip3 install uwsgi # 安装uwsgi
12.退出虚拟环境
deactivate
三、MySQL安装
1.下载
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
2.安装MySQL安装源
yum -y localinstall mysql57-community-release-el7-11.noarch.rpm
3.升级GPG
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
4.安装
yum -y install mysql-community-server
5.启动
systemctl start mysqld.service
systemctl status mysqld.service # 查看运行状态
6.查看初始密码
grep "root@localhost: " /var/log/mysqld.log
红色字体后面的就是初始密码,一般是12位长度
7.登录MySQL
mysql -uroot -p'初始密码';
这里输入我们刚才拿到的初始密码
8.修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
新密码必须满足复杂度要求,至少8位+大小写+数字
9.查看编码信息
show variables like 'character\_set\_%';
10.设置编码信息
set character_set_client=utf8;
set character_set_connection=utf8;
set character_set_database=utf8;
set character_set_results=utf8;
set character_set_server=utf8;
11.新建用户
grant all privileges on *.* to '用户名'@'IP' identified by '密码' with grant option;
用户名以及密码可自行设置
IP根据需要可以指定IP,或者设置其他,比如localhost是本地,%表示任意IP都可以访问
12.重新加载权限
flush privileges;
13.退出MySQL
exit
四、本地项目搬迁到服务器
1.备份本地数据库
建议命名为django_db.sql,保存到本地项目文件下
2.在本地项目目录下把当前的环境依赖包导出到requirements.txt文件
pip freeze > requirements.txt
3.把项目源码压缩打包并上传到服务器
建议命名为django.zip,上传到home文件夹
4.解压
yum install -y unzip zip # 安装解压工具
unzip -o /home/django.zip -d /data/django_env/ # 覆盖解压
5.进入虚拟环境
cd /data/django_env/bin # 切换路径
source activate # 启动虚拟环境
6.安装requirements.txt里的依赖包
pip3 install -r /data/django_env/requirements.txt
7.导入数据库到服务器
mysql -u'用户名' -p'密码'; # 登录MySQL
create database django; # 新建数据库
use django; # 选择数据库
set names utf8; # 设置编码
source /data/django_env/django.sql; # 导入sql文件
exit # 退出MySQL
8.测试是否可以运行
cd /data/django_env
python3 manage.py migrate
python3 manage.py runserver
总结
本文经过个人多次测试,可以正常使用
2022年3月28日

2173

被折叠的 条评论
为什么被折叠?



