当前位置: 首页 > news >正文

使用宝塔面板安装mrdoc

使用宝塔面板安装mrdoc

  • 1、所需环境
  • 2、ubuntu系统安装
  • 3、宝塔面板安装
  • 4、Nginx+PHP+MySQL安装
  • 5、python项目管理器安装
  • 6、 python版本安装
  • 7、mrdoc的部署
    • 7.1、下载项目源码
    • 7.2、新建python管理器项目
  • 8、使用MySQL作为默认数据库
    • 8.1、安装mysqlclient插件
    • 8.2、配置数据库连接信息
    • 8.3、数据库初始化
  • 9、使用Nginx进行反向代理
  • 10、部署SSL证书

1、所需环境

操作系统:ubuntu 22.04
宝塔版本:7.9.8
web服务器:Nginx 1.22.1
PHP版本:8.1.13
MySQL版本:8.0.24
python管理器版本:2.1
python版本:3.9.7

2、ubuntu系统安装

3、宝塔面板安装

4、Nginx+PHP+MySQL安装

5、python项目管理器安装

6、 python版本安装

7、mrdoc的部署

7.1、下载项目源码

SSH进去服务器,进入/www/wwwroot,新建项目文件夹mrdoc,执行下面代码下载项目源代码

# 创建项目文件夹
sudo mkdir /www/wwwroot/mrdoc
# 进入项目文件夹
cd /www/wwwroot/mrdoc
# 下载项目源代码
git  clone https://gitee.com/zmister/MrDoc.git

7.2、新建python管理器项目

在这里插入图片描述

发现有插件未安装
在这里插入图片描述
安装未安装插件,由于我安装了,所以不是没有安装按键。
在这里插入图片描述

等待python管理器安装项目及依赖项
在这里插入图片描述

8、使用MySQL作为默认数据库

进入宝塔文件管理,进入目录如下:
在这里插入图片描述
如果依赖项安装不完整,可以重新手动安装:

cd /www/wwwroot/mrdoc/MrDoc
#注意替换为自己的路径
./11be20911658e8bec317a5e8928cf0ad_venv/bin/pip install -r requirements.txt

8.1、安装mysqlclient插件

在这里插入图片描述

8.2、配置数据库连接信息

打开配置文件 /www/wwwroot/mrdoc/MrDoc/config/config.ini,修改[database]项下相关的信息为:

[database]
engine = mysql
name = 数据库名
user = 数据库用户名
password = 数据库用户密码
host = 数据库的连接地址
port = 数据库的连接端口

8.3、数据库初始化

进入ssh,进入mrdoc源码所在目录,如:/www/wwwroot/mrdoc/MrDoc/ ,依次执行如下命令

#注意替换为自己的路径./11be20911658e8bec317a5e8928cf0ad_venv/bin/python3 manage.py makemigrations ./11be20911658e8bec317a5e8928cf0ad_venv/bin/python3 manage.py migrate./11be20911658e8bec317a5e8928cf0ad_venv/bin/python3 manage.py createsuperuser

返回项目管理器,重启项目
在这里插入图片描述
至此,mrdoc就可以访问了。
在这里插入图片描述

9、使用Nginx进行反向代理

创建新的网站(手动模式)
在这里插入图片描述
设置方向代理
在这里插入图片描述
映射域名(自动创建反代)
在这里插入图片描述
输入需要映射的域名,完成即可

10、部署SSL证书

打开创建好的网站,输入对应的内容,开启ssl
在这里插入图片描述
重启服务器,生效设置。

相关文章:

使用宝塔面板安装mrdoc

使用宝塔面板安装mrdoc 1、所需环境2、ubuntu系统安装3、宝塔面板安装4、NginxPHPMySQL安装5、python项目管理器安装6、 python版本安装7、mrdoc的部署7.1、下载项目源码7.2、新建python管理器项目 8、使用MySQL作为默认数据库8.1、安装mysqlclient插件8.2、配置数据库连接信息…...

C++操作符重载实例

C操作符重载实例&#xff0c;我们把坐标值CVector的加法进行重载&#xff0c;计算c3c1c2时&#xff0c;也就是计算x3x1x2&#xff0c;y3y1y2&#xff0c;以下是C代码&#xff1a; #include <iostream> using namespace std;class CVector{public:int x,y;CVector(){} ; …...

Linux高效进程控制的实战技巧

Linux高效进程控制的实战技巧 Linux是一种开源的Unix-like操作系统内核&#xff0c;由林纳斯托瓦兹&#xff08;Linus Torvalds&#xff09;于1991年首次发布。Linux以其稳定性、安全性和灵活性而著称&#xff0c;广泛应用于服务器、桌面、嵌入式系统等多个领域。在Linux系统编…...

使用条件变量实现线程同步:C++实战指南

使用条件变量实现线程同步&#xff1a;C实战指南 在多线程编程中&#xff0c;线程同步是确保程序正确性和稳定性的关键。条件变量&#xff08;condition variable&#xff09;是一种强大的同步原语&#xff0c;用于在线程之间进行协调&#xff0c;避免数据竞争和死锁。本文将详…...

Spark2.x 入门: KMeans 聚类算法

一 KMeans简介 KMeans 是一个迭代求解的聚类算法&#xff0c;其属于 划分&#xff08;Partitioning&#xff09; 型的聚类方法&#xff0c;即首先创建K个划分&#xff0c;然后迭代地将样本从一个划分转移到另一个划分来改善最终聚类的质量。 ML包下的KMeans方法位于org.apach…...

如何快速练习键盘盲打

盲打是指在不看键盘的情况下进行打字&#xff0c;这样可以显著提高打字速度和效率。以下是一些练习盲打的方法&#xff1a; 熟悉键盘布局&#xff1a;首先&#xff0c;你需要熟悉键盘上的字母和符号的位置。可以通过键盘图或者键盘贴纸来帮助记忆。 使用在线打字练习工具&…...

Flask中实现WebSocket需要什么组件

在Flask中实现WebSocket功能&#xff0c;通常不会直接使用Flask本身&#xff0c;因为Flask是一个轻量级的Web框架&#xff0c;主要设计用于处理HTTP请求。然而&#xff0c;你可以通过集成一些第三方库来在Flask应用中支持WebSocket。WebSocket是一种在单个TCP连接上进行全双工通…...

java8 Stream流详解

前言 Java 8引入了一种新的处理集合的方式——Stream API。它提供了一种高级迭代方式&#xff0c;支持函数式编程风格&#xff0c;使得集合操作更加简洁、清晰。本文将详细介绍Java 8 Stream API的核心概念、操作和使用技巧。 Stream API 简介 Stream API是Java 8中的一大亮…...

通信工程学习:什么是AB地址总线、DB数据总线、CD控制总线

AB地址总线、DB数据总线、CD控制总线 在计算机体系结构中&#xff0c;总线&#xff08;Bus&#xff09;是一种用于在计算机内部各个组件之间传输信息的物理通道。其中&#xff0c;AB地址总线、DB数据总线和CD控制总线是计算机总线系统中非常重要的三个组成部分&#xff0c;它们…...

CP AUTOSAR标准之EthernetInterface(AUTOSAR_SWS_EthernetInterface)(更新中……)

1 简介和功能概述 该规范指定了AUTOSAR基础软件模块以太网接口的功能、API和配置。   在AUTOSAR分层软件架构[1]中,以太网接口属于ECU抽象层,或者更准确地说,属于通信硬件抽象。   这表明了以太网接口的主要任务:   为上层提供独立于硬件的以太网通信系统接口,该系统…...

Windows系统离线安装使用pm2 管理进程

目录 1. 安装 Node.js 和 npm 2. 创建一个项目目录 3. 初始化 npm 项目 4. 下载 pm2 及其所有依赖 5. 打包 pm2 及其依赖 6. 将打包文件传输到内网服务器 7. 在内网服务器上解压并安装 8. 使用 pm2 总结 在联网的机器上&#xff0c;使用 npm&#xff08;Node.js 包管理…...

4-4.Andorid Camera 之简化编码模板(获取摄像头 ID、选择最优预览尺寸)

一、Camera 简化思路 在 Camera 的开发中&#xff0c;其实我们通常只关注打开相机、图像预览和关闭相机&#xff0c;其他的步骤我们不应该花费太多的精力 为此&#xff0c;应该提供一个工具类&#xff0c;它有处理相机的一些基本工具方法&#xff0c;包括获取摄像头 ID、选择最…...

【深度学习】向量化

1. 什么是向量化 向量化通常是消除代码中显示for循环语句的技巧&#xff0c;在深度学习实际应用中&#xff0c;可能会遇到大量的训练数据&#xff0c;因为深度学习算法往往在这种情况下表现更好&#xff0c;所以代码的运行速度非常重要&#xff0c;否则如果它运行在一个大的数据…...

基于canal的Redis缓存双写

canal地址&#xff1a;alibaba/canal: 阿里巴巴 MySQL binlog 增量订阅&消费组件 (github.com)https://github.com/alibaba/canal 1. 准备 1.1 MySQL 查看主机二进制日志 show master status 查看binlog是否开启 show variables like log_bin 授权canal连接MySQL账号 …...

以太网交换机工作原理学习笔记

在网络中传输数据时需要遵循一些标准&#xff0c;以太网协议定义了数据帧在以太网上的传输标准&#xff0c;了解以太网协议是充分理解数据链路层通信的基础。以太网交换机是实现数据链路层通信的主要设备&#xff0c;了解以太网交换机的工作原理也是十分必要的。 1、以太网协议…...

ECCV`24 | 蚂蚁集团开源风格控制新SOTA!StyleTokenizer:零样本精确控制图像生成

文章链接&#xff1a;https://arxiv.org/pdf/2409.02543 代码&数据集链接&#xff1a; https://github.com/alipay/style-tokenizer 亮点直击 介绍了一种名为StyleTokenizer的新方法&#xff0c;用于在扩散模型中进行风格控制。这种方法允许通过一个任意参考图像实现对生成…...

Flutter的升级和降级步骤

升级 1.版本升级 // 升级到指定版本 flutter upgrade 版本号 // 升级到最新版本 flutter upgrade 2. 更新开发配置 启动 Android Studio。 打开 Settings 对话框&#xff0c;查看 SDK Manager。 如果你已经打开了一个项目&#xff0c;请打开 Tools > SDK Manager。 如果…...

计算机网络与Internet应用

一、计算机网络 1.计算机网络的定义 网络定义&#xff1a;计算机网络是指将地理位置不同的具有独立功能的多台计算机及其外部设备&#xff0c;通过通信线路连接起来&#xff0c;在网络操作系统&#xff0c;网络管理软件及网络通信协议的管理和协调下&#xff0c;实现资源共享…...

[建模已更新]2024数学建模国赛高教社杯A题:“板凳龙” 闹元宵 思路代码文章助攻手把手保姆级

本系列专栏将包括两大块内容 第一块赛前真题和模型教学,包括至少8次真题实战教学,每期教学专栏的最底部会提供完整的资料百度网盘包括:真题、数据、可复现代码以及文章. 第二块包括赛中详细思路建模、代码的参考助攻, 会提供2024年高教社国赛A的全套参考内容(一般36h内更新完毕…...

Spring Boot-自定义banner

在 Spring Boot 应用中&#xff0c;你可以自定义启动时显示的 banner。这些 banner 可以包括图形、文字或者其他形式的标识。如图所示&#xff1a; 1. 使用 banner.txt 文件 默认情况下&#xff0c;Spring Boot 使用项目的 banner.txt 文件中的内容作为启动时的 banner。你可以…...

进程地址空间(比特课总结)

一、进程地址空间 1. 环境变量 1 &#xff09;⽤户级环境变量与系统级环境变量 全局属性&#xff1a;环境变量具有全局属性&#xff0c;会被⼦进程继承。例如当bash启动⼦进程时&#xff0c;环 境变量会⾃动传递给⼦进程。 本地变量限制&#xff1a;本地变量只在当前进程(ba…...

测试markdown--肇兴

day1&#xff1a; 1、去程&#xff1a;7:04 --11:32高铁 高铁右转上售票大厅2楼&#xff0c;穿过候车厅下一楼&#xff0c;上大巴车 &#xffe5;10/人 **2、到达&#xff1a;**12点多到达寨子&#xff0c;买门票&#xff0c;美团/抖音&#xff1a;&#xffe5;78人 3、中饭&a…...

深度学习习题2

1.如果增加神经网络的宽度&#xff0c;精确度会增加到一个特定阈值后&#xff0c;便开始降低。造成这一现象的可能原因是什么&#xff1f; A、即使增加卷积核的数量&#xff0c;只有少部分的核会被用作预测 B、当卷积核数量增加时&#xff0c;神经网络的预测能力会降低 C、当卷…...

IP如何挑?2025年海外专线IP如何购买?

你花了时间和预算买了IP&#xff0c;结果IP质量不佳&#xff0c;项目效率低下不说&#xff0c;还可能带来莫名的网络问题&#xff0c;是不是太闹心了&#xff1f;尤其是在面对海外专线IP时&#xff0c;到底怎么才能买到适合自己的呢&#xff1f;所以&#xff0c;挑IP绝对是个技…...

力扣热题100 k个一组反转链表题解

题目: 代码: func reverseKGroup(head *ListNode, k int) *ListNode {cur : headfor i : 0; i < k; i {if cur nil {return head}cur cur.Next}newHead : reverse(head, cur)head.Next reverseKGroup(cur, k)return newHead }func reverse(start, end *ListNode) *ListN…...

django blank 与 null的区别

1.blank blank控制表单验证时是否允许字段为空 2.null null控制数据库层面是否为空 但是&#xff0c;要注意以下几点&#xff1a; Django的表单验证与null无关&#xff1a;null参数控制的是数据库层面字段是否可以为NULL&#xff0c;而blank参数控制的是Django表单验证时字…...

DiscuzX3.5发帖json api

参考文章&#xff1a;PHP实现独立Discuz站外发帖(直连操作数据库)_discuz 发帖api-CSDN博客 简单改造了一下&#xff0c;适配我自己的需求 有一个站点存在多个采集站&#xff0c;我想通过主站拿标题&#xff0c;采集站拿内容 使用到的sql如下 CREATE TABLE pre_forum_post_…...

[USACO23FEB] Bakery S

题目描述 Bessie 开了一家面包店! 在她的面包店里&#xff0c;Bessie 有一个烤箱&#xff0c;可以在 t C t_C tC​ 的时间内生产一块饼干或在 t M t_M tM​ 单位时间内生产一块松糕。 ( 1 ≤ t C , t M ≤ 10 9 ) (1 \le t_C,t_M \le 10^9) (1≤tC​,tM​≤109)。由于空间…...

Xcode 16 集成 cocoapods 报错

基于 Xcode 16 新建工程项目&#xff0c;集成 cocoapods 执行 pod init 报错 ### Error RuntimeError - PBXGroup attempted to initialize an object with unknown ISA PBXFileSystemSynchronizedRootGroup from attributes: {"isa">"PBXFileSystemSynchro…...

boost::filesystem::path文件路径使用详解和示例

boost::filesystem::path 是 Boost 库中用于跨平台操作文件路径的类&#xff0c;封装了路径的拼接、分割、提取、判断等常用功能。下面是对它的使用详解&#xff0c;包括常用接口与完整示例。 1. 引入头文件与命名空间 #include <boost/filesystem.hpp> namespace fs b…...