Qexo部署到服务器
Qexo
一个美观、强大的在线 静态博客 管理器
- 简单:支持使用 Vercel 零成本一键部署, 您只需要配置一个免费数据库
- 强大:无限的拓展性, 应有尽有的配套功能尽在掌握
- 美观:基于 Bootstrap & Argon 的现代化响应式风格
- 全面:Django 后端, 支持多种平台和数据库
Qexo 官方文档
服务器准备
- 服务商:亚马逊云
- 产品:EC2
- 系统:Ubuntu Server 22.04 LTS - 其他系统可能有所差异
安装 Python3
执行以下命令一键安装 python3 和 pip3
1 | sudo apt update && sudo apt install -y python3 python3-pip |
分别通过以下命令查看是否安装成功
python3 --version
pip3 --version
安装 MySQL 数据库
安装 MySQL
在 1Panel 应用商店中找到 MySQL,点击安装
版本选择 5.7
端口外部访问可以不用开(开了也用不到它)
添加数据库
数据库安装成功后,点击菜单栏的数据库
来到MySQL
的管理页面
点击创建数据库
名称和用户名随意填,比如都填 hexo,然后确认创建
安装 Qexo
下载 Qexo
配置 Qexo
在 1Panel 中找到 qexo 的下载目录
创建名为
configs.py
的文件编辑
configs.py
,添加以下内容1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22import pymysql
pymysql.install_as_MySQLdb()
#域名
DOMAINS = ["127.0.0.1", "localhost"]
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
#数据库名
'NAME': 'qexo',
#用户名
'USER': 'qexo',
#密码
'PASSWORD': 'KFCvivo50',
#数据库所在主机地址
'HOST': '127.0.0.1',
#端口
'PORT': '3306',
'OPTIONS': {
"init_command": "SET sql_mode='STRICT_TRANS_TABLES'"
}
}
}DOMAINS 为可以访问到 Qexo 域名或 ip,如果访问的域名或 ip 没有在这里定义,访问会被拦截
这里建议不做修改,就填127.0.0.1
或localhost
将 数据库名 ,用户名 和 密码 修改为 #添加数据库 时填入的内容
点击确认保存
返回上一级目录(qexo的安装目录)
修改 qexo 文件夹及其子文件夹的归属为 ubuntu执行
cd ~/qexo
来到 qexo 的安装目录,再执行以下命令进行数据初始化1
bash migrate.sh
启动 Qexo
安装 Supervisor
Supervisor 是一款开源的进程管理工具,它可以实现进程的自动启动、重启、监控等功能,并可以方便地实现进程的异步启动和自动化管理。
这里需要它来帮助我们管理 qexo 的进程
1 | sudo apt update && sudo apt install supervisor |
执行命令一键安装 supervisor
在 1Panel 面板中依次点击 工具箱
-> 进程守护
点击 初始化,使用默认配置,点击确认保存
再次确认初始化
创建 Qexo 进程守护
点击 创建守护进程
- 名称随意,比如填
114514
- 启动用户填
ubuntu
- 如上图选择运行目录
- 启动命令填
python3 manage.py runserver 0.0.0.0:8000 --noreload
这将在 8000 端口上启动 Qexo 服务 - 进程数填
1
最后确认保存
这时可以通过 #配置 Qexo 时第 2
步配置的域名(或 公有ip) 加端口打开 Qexo面板
(可选)反向代理 Qexo
反向代理 Qexo
如果没有域名,建议直接跳过这一步
为了方便对 Qexo 进行管理,可以在 1Panel 面板新建一个网站来反向代理 Qexo
在 1Panel 的网站页面选择 创建网站
-> 反向代理
主域名填自己的域名(不能与博客相同,比如解析一个qexo-admin.example.com)
代号随意,比如
qexo
代理地址填 #配置 Qexo 时第
2
步配置的 ip + 创建 Qexo 进程守护 时,命令中使用的端口
例:127.0.0.1:8000
再点击 配置
进入网站的配置界面
将后端域名改为 127.0.0.1
或 localhost
- 因为 #配置 Qexo 时,我的 DOMAINS
填的 127.0.0.1
这时,可以直接使用 域名 来访问 Qexo 面板
Qexo 面板初始化
通过域名或 ip 打开 Qexo 面板,首次打开会跳转到初始化页面,点击开始初始化
- 服务商选
本地
,表示 hexo 与 qexo 都部署在同一台服务器上
其他服务商请按要求填写 - 使用配置选择
Hexo
- 博客路径填
Hexo
的源代码的绝对路径,例如/home/ubuntu/hexoblog
注意: 不是静态资源的路径。如果博客是使用一键部署插件部署到服务器的,请按照 #Hexo 中的部署方式部署 Hexo 博客到服务器
因为一键部署只会推送静态资源到服务器,Qexo 需要 Hexo 源代码才能修改博客内容 - 自动部署填
hexo clean && hexo g
这会自动生成静态资源,并将静态资源放在 hexo 根配置文件中指定的目录(网站目录)中
点击下一步,即可通过方才设置的账号和密码登录面板