腾讯云服务器 flask项目 傻瓜式部署全流程 (二)

目录

                                        第二部分:项目及虚拟环境配置

一、创建项目目录

二、上传项目文件

三、安装虚拟环境

四、安装数据库(Mariadb/mysql)


                                        第二部分:项目及虚拟环境配置

一、创建项目目录

本案例中将配置文件、日志文件、虚拟环境和项目分别创建conff, envf, logf, www四个文件夹分开放置,方便维护。

# 进入home文件夹
cd /home 
# 创建四个子文件夹   
mkdir conff envf logf www
conff是配置文件,用于存放项目的nginx配置文件和uwsgi启动文件
logf是日志文件,用于存放nginx的启动成功和失败文件,以及uwsgi的运行日志文件
envf是用于存放虚拟环境
www是项目文件夹,该目录下存放上传的flask文件夹

二、上传项目文件

仍采用WinSCP客户端从电脑主机上上传flask项目文件到/home/www文件夹中,具体上传步骤自行百度,省略。

三、安装虚拟环境

1、在/home/envf中创建虚拟环境

cd /home/envf && python3 -m venv venv

2、激活虚拟环境

source venv/bin/activate

3、安装依赖包

(venv) [root@localhost XXXX] pip3 install -r requirements.txt

将flask项目所用的依赖包软件及版本写入requirements.txt文件中,
利用上面一条命令一次性全部导入。
如本项目所用requirements.txt为:
Flask==0.10.1
Flask-Login==0.2.11
Flask-Mail==0.9.1
Flask-Moment==0.4.0
Flask-PageDown==0.1.5
Flask-SQLAlchemy==2.0
Flask-Script==2.0.5
Flask-WTF==0.10.2
Flask-Cache==0.13.1
Flask-Restless==0.15.0
Flask-Uploads==0.1.3
Jinja2==2.7.3
Mako==1.0.0
Markdown==2.5.1
MarkupSafe==0.23
SQLAlchemy==0.9.8
WTForms==2.0.1
Werkzeug==0.9.6
html5lib==1.0b3
itsdangerous==0.24
six==1.8.0
awesome-slugify==1.6
flask_migrate==2.3.1
pymysql==0.9.3

四、安装数据库(Mariadb/mysql)

此处安装mariadb,可支持MySQL正常操作。

1、安装mariadb的数据库和客户端程序

yum -y install mariadb mariadb-server

2、启动mariadb数据库

# 启动数据库
systemctl start mariadb

(# 重启数据库
systemctl restart mariadb
# 停止数据库
systemctl stop mariadb
# 查看数据库的运行状态
systemctl status mariadb
# 设置数据库开机自动启动
systemctl enable mariadb)

执行以下操作时,将mariadb置于启动状态中

3、配置数据库的初始密码

mysql_secure_installation

4、数据库详细配置

Enter current password for root:<–初次运行直接回车

设置密码
Set root password? [Y/n] <– 是否设置root用户密码,输入y并回车或直接回车

New password: <– 设置root用户的密码
Re-enter new password: <– 再输入一次你设置的密码

其他配置
Remove anonymous users? [Y/n] <– 是否删除匿名用户,回车
Disallow root login remotely? [Y/n] <–是否禁止root远程登录,回车,
Remove test database and access to it? [Y/n] <– 是否删除test数据库,回车
Reload privilege tables now? [Y/n] <– 是否重新加载权限表,回车

5、测试登录命令

mysql -u root -p
密码:XXXXXXX

(1)创建用户
create user 'root'@'%' identified by 'passwordXXXXX'; 
(2)用户授权
# 给用户最大权限 (选择这种)
 grant all privileges on *.* to 'root'@'%' identified by 'passwordXXXXX'; 
# 给部分权限(test 数据库) (暂不选择)
#grant all privileges on test.* to 'root'@'%' identified by 'password' with grant option;
 # 刷新权限表 
flush privileges;
# 查看用户信息
 show grants for 'root'@'localhost';
(3)创建数据库
create database if not exists XXXX(库名) default charset utf8 collate utf8_general_ci;

参考网站:https://zhuanlan.zhihu.com/p/47728105

                  https://zhuanlan.zhihu.com/p/46679165

猜你喜欢

转载自blog.csdn.net/weixin_43409302/article/details/85913982