精易论坛

标题: 用最新版的宝塔部署MrDoc [打印本页]

作者: 林昕    时间: 2025-4-26 12:40
标题: 用最新版的宝塔部署MrDoc
如题想部署个知识库系统,之前用的就是MrDoc,以前用的是Docker一键拉取的,几个月前突然崩了,数据全丢,一直没整明白。

现在是想在宝塔面板的Python管理器上部署一个,按照官网的文档部署下来总是报错。求大佬给个教程。

作者: 易肆玖    时间: 2025-4-26 13:18
[JavaScript] 纯文本查看 复制代码
第一步:环境准备  
1. 服务器要求:  
   - 系统:CentOS 7+ 或 Ubuntu 18.04+  
   - 宝塔面板版本:7.0 或更高  
   - Python 版本:3.6+(推荐 3.8+)  
   - 内存:至少 2GB(建议 4GB 以上)  

2. 安装必要软件:  
   在宝塔面板的「软件商店」中安装:  
   - Nginx(Web服务器)  
   - MySQL/MariaDB(数据库)  
   - Redis(可选,用于缓存加速)  
   - Python项目管理器(搜索安装)

---

第二步:部署MrDoc源码  
1. 下载源码:  
   - 方法一(推荐):通过Git克隆  
     bash  
     git clone https://gitee.com/zmister/MrDoc.git  
   - 方法二:手动下载  
     从  下载 ZIP 包,解压到宝塔面板的网站根目录(如 `/www/wwwroot/mrdoc`)。  

2. 创建Python虚拟环境:  
   - 进入宝塔面板的「Python项目管理器」  
   - 选择项目路径:`/www/wwwroot/mrdoc`  
   - 选择 Python 3.8+ 版本  
   - 点击「创建虚拟环境」并激活  

3. 安装依赖库:  
   - 自动安装:在项目管理器中勾选「自动安装依赖」(依赖文件为 `requirements.txt`)  
   - 手动安装:如果失败,通过宝塔终端执行:  
     bash  
     pip install -r /www/wwwroot/mrdoc/requirements.txt

---

第三步:配置数据库  
1. 初始化数据库:  
   - 进入宝塔终端,进入项目目录:  
     bash  
     cd /www/wwwroot/mrdoc  
   - 执行数据库迁移命令:  
     bash  
     python manage.py makemigrations  
     python manage.py migrate  

2. 创建管理员账号:  
   bash  
   python manage.py createsuperuser  
   按提示输入用户名、邮箱和密码(例如:用户名 `admin`,密码 `123456`)。

---

第四步:配置宝塔站点  
1. 添加网站:  
   - 在宝塔面板的「网站」菜单点击「添加站点」  
   - 填写信息:  
     - 域名:填写你的域名(如 `mrdoc.example.com`)  
     - 根目录:选择 `/www/wwwroot/mrdoc`  
     - 选择「Python」框架,端口设为 `8000`(或其他未占用端口)  

2. 配置反向代理(Nginx):  
   - 编辑站点配置文件,添加以下规则:  
     nginx  
     location / {  
         proxy_pass http://127.0.0.1:8000;  
         proxy_set_header Host $host;  
         proxy_set_header X-Real-IP $remote_addr;  
     }  
   - 保存后重启Nginx服务。

---

第五步:运行与调试  
1. 启动项目:  
   - 在项目管理器中点击「运行」  
   - 或通过终端执行:  
     bash  
     python manage.py runserver 0.0.0.0:8000  

2. 访问测试:  
   - 浏览器打开 `http://你的域名:8000`  
   - 使用管理员账号登录(如 `admin/123456`)

---

第六步:高级配置  
1. 静态文件托管:  
   - 在Nginx配置中添加:  
     nginx  
     location /static/ {  
         alias /www/wwwroot/mrdoc/static/;  
     }  

2. 启用HTTPS:  
   - 在宝塔面板的「网站」中申请Let's Encrypt免费SSL证书,绑定到站点。  

3. 防火墙设置:  
   - 确保服务器防火墙开放 `80`(HTTP)、`443`(HTTPS)、`8000`(Python服务)端口。

---

第七步:常见问题处理  
1. 依赖安装失败:  
   - 检查Python版本是否匹配,尝试手动安装缺失库(如 `pillow`、`mysqlclient`)。  

2. 数据库连接错误:  
   - 修改 `settings.py` 文件中的数据库配置,确保与宝塔中MySQL的账号密码一致。  

3. 端口冲突:  
   - 更换项目端口(如 `8000` → `8080`),并在Nginx配置中同步修改。

---

第八步:升级与备份  
1. 升级MrDoc:  
   - 进入项目目录,拉取最新代码:  
     bash  
     git pull origin master  
   - 重新执行数据库迁移和依赖安装。  

2. 数据备份:  
   - 定期备份:  
     - 项目目录:`/www/wwwroot/mrdoc`  
     - MySQL数据库:通过宝塔面板的「数据库」管理工具导出SQL文件。

---

完成以上步骤后,你的MrDoc知识库系统即可正常访问。如遇问题,可检查日志文件(位于项目目录的 `logs` 文件夹)。

作者: 林昕    时间: 2025-4-26 13:49
易肆玖 发表于 2025-4-26 13:18
[JavaScript] 纯文本查看 复制代码
第一步:环境准备  
1. 服务器要求:  
   - 系统:CentOS 7+ 或 Ubuntu 18. ...

这个跟官网的安装教程是一样的,我试过,到数据库那一步就报错

[mw_shl_code=javascript,true]  File "manage.py", line 14
    ) from exc
         ^
SyntaxError: invalid syntax
作者: 刘一手    时间: 2025-4-28 15:37
用windows的不好吗?
作者: 爱你入骨    时间: 2025-4-29 08:28
林昕 发表于 2025-4-26 13:49
这个跟官网的安装教程是一样的,我试过,到数据库那一步就报错

[mw_shl_code=javascript,true]  File "m ...

你python版本太低 跟官网的得对应




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4