未避免新手用户或不知道如何部署的小伙伴正常在自己的服务器上把服务跑起来,特写此篇文章帮助
项目介绍
项目目录
`
|----settings\ # 配置文件目录
| |----__init__.py
| |----development.py
| |----base.py
| |----production.py
|----core\ # 核心文件目录
|----requirements.txt
|----utils\ # 工具文件目录
|----libs\ # 系统工具文件目录
|----logs\
|----.env # 项目配置文件
|----applications\ # 主程序目录
| |----.DS_Store
| |----models.py # 模型目录
| |----auth\ # 用户模块
| |----admin\ # 后台模块目录
| |----__init__.py
| |----router.py # 路由目录
| |----apps\ # app目录
|----manage.py # 运行程序目录
项目配置
项目配置文件是根目录的.env
文件 配置文件可定义数据库、redis、阿里云短信、系统接口配置、系统功能开关等功能
部署准备
以下是我本次部署的服务器环境, 由于服务器是新安装的,环境如下,并没有安装其他任何额外的软件
- CentOS 7.9.2009 x86_64(Py3.7.9)
- Mysql 8.0
- Nginx-1.22
安装项目运行环境
安装Python3.10.0
部署准本完成后,点击网站,因为Moreapi是个python项目,所以要使用Python环境运行
- 点击宝塔左侧导航栏网站–网站
- 进入网站页面点击上方的–python项目
- 添加python环境–点击python版本管理。安装python3.10.0
Python安装完成后刷新页面,点击添加python项目就可以添加项目了,页面如下,我们暂时先不做添加
新建MySQL数据库
因为项目中用到MySQL数据库,我们宝塔面板中添加一个数据库
如果遇到提示数据库密码错误
,那是因为系统没有默认重置数据库密码,先取消创建,点击上方的root密码
重置一下就行了,再次重新创建数据
安装redis
项目中同样也拥戴redis数据库,用于发送短信或者邮件是用到,到宝塔面板中软件商店中搜索redis,点击安装就行了
申请阿里云短信SMS
项目集成阿里云短信,用户注册需要用到短信验证码,这里选择阿里云短信,申请地址:短信服务 (aliyun.com)
修改源代码
在得到MoreAPI源代码后还不能直接使用,我们要修改里面的数据库连接才可以使用
- 找到源代码文件夹中的
.env
文件,修改此文件,此文件为数据库和redis数据库的配置文件,将里面的db
下的内容改成我们刚刚创建的MySQL数据库的信息,redis按照图上修改即可
配置文件说明
稻壳道理购买地址:稻壳代理 | 高性价比代理IP服务 | 免费代理IP自动更新 (docip.net)
流冠代理:杭州流冠科技有限公司-流冠IP代理-高匿HTTP-在线代理ip-隧道代理-千万IP服务供应商 (hailiangip.com)
[db]
user = xxxxxx # 你的数据库用户名
password = xxxxxx # 数据库密码
host = 127.0.0.1 # 数据库地址
port = 3306 # 数据库端口
database = xxxx # 数据库名称
[redis] # 这里是redis的相关配置
host = localhost
port = 6379
password =
database = 8
[ali_sms]
ACCESS_KEY_ID = xxxx # 阿里云短信ACCESS_KEY_ID
ACCESS_KEY_SECRET = xxxxxx # 阿里云短信ACCESS_KEY_SECRET
SIGN_NAME = xxxxx # 阿里云短信签名名称
TEMPLATE_CODE = SMS_xxxx # 阿里云短信模版CODE
[system_api]
not_need_token_api = ['user_active', 'user_login', 'user_register', 'user_reset_password', 'user_reset_token'] # 不需要token的api
not_need_request_remain = ['user', 'admin'] # 不需要token的路由名称
need_vip = ['youtube_video_data', 'youtube_video_comments', 'youtube_search'] # 需要VIP才能解析的路由名称
request_remain = 1 # 每次解析扣除的积分数
[system_config]
login_status = 0 # 是否需要登录才能解析 1:开启 0:关闭
vip_status = 0 # 是否开启VIP解析 1:开启 0:关闭
request_remain_status = 0 # 是否开启解析扣除积分 1:开启 0:关闭
request_proxy = 0 # 是否开启代理模式 1:开启 0:关闭 如果开启流冠代理则使用流冠代理
doc_token = xxxxxxx # 稻壳私密代理个人token
hl_proxy = 0 # 是否开启流冠代理(按流量计费隧道代理)
hl_proxy_order_id = xxxxxxxxx # 流冠代理订单号
hl_proxy_pwd = xxxxxxxx # 流冠代理订单密码
hl_proxy_host = flow.hailiangip.com
hl_proxy_port = xxxxx # 流冠代理端口号
proxy_ip_timeout = 60 # 解析过期时间(稻壳代理) 单位:秒
cookie_pools = 0 # 是否开启代理池(需使用数据库功能)
[cookies] # 这里是配置默认cookie的地方,此处为防止数据请求失败做的备份(cookie值尽量修改为自己的。也可在请求API时在headers中携带cookie)
douyin_default = "" # 你自己的抖音cookie
xhs_default = "" # 你自己的小红书首页cookie
ks_default = "" # 你自己的快手首页cookie
bilibili_default = "" # 你自己的B站首页cookie
weibo_default = "" # 你自己的微博首页cookie
正式部署MoreAPI
- 点击宝塔面板左侧–文件,进入
www
文件夹,新建一个文件夹命名为MoreAPI,将我们的源码全部上传到MoreAPI
文件夹内 - 点击宝塔面板左侧的网站–点击Python项目–添加Python项目,项目路径是我们刚才新建的文件夹路径,填写完毕后点击提交,会自动开始创建虚拟环境。如果提示
配置文件输出成功
,则表示可以运行项目了,刷新一下页面,就可以看到如下图 - 我们可以查看一下服务日志,项目已经成功跑起来了,但是还不能访问,因为我们还要到防火墙添加端口
- 到宝塔面板左侧–安全–添加端口9432(绑定域名的用户可以忽略此操作)
- 数据迁移,打开ssh链接到服务器或使用宝塔自带的终端链接服务器,进入项目目录,然后执行如下语句/www/server/pyporject_evn/MoreAPI_venv/bin/aerich init -t settings.base.TORTOISE # 创建迁移文件
/www/server/pyporject_evn/MoreAPI_venv/bin/aerich init-db # 数据库初始化 - 绑定安全域名,如果需要使用域名访问,则解析了域名之后直接在域名管理里面添加域名即可
- 最后访问域名出现如下即部署成功
暂无评论内容