NextCloud服务安装与配置教程
NextCloud服务安装与配置教程
什么是 NextCloud:
Nextcloud 是一款开源的私有云存储和协作平台,允许用户在自己的服务器上托管数据并管理团队协作。它可以作为一个功能丰富、安全可靠的替代方案,与商业云服务(如 Google Drive、Dropbox)相比提供更多控制和隐私保护。简单来说可以替代公有云的商用云盘,其他更加具体的介绍可以移步官网1。
1. 文档目的
本教程旨在指导运维工程师完成 NextCloud 服务的基础配置、安装和日常维护工作。通过本教程,你将学会:
- NextCloud 的安装与基础配置;
- NextCloud 使用对象存储配置;
- NextCloud 的离线插件安装;
- NextCloud 的日常使用;
2. 环境准备
| 系统类型 | 系统版本 | 内核版本 | IP 地址 | 功能角色 |
|---|---|---|---|---|
| Linux | openEuler 22.03 (LTS-SP3) | Linux 5.10.0-182.0.0.95.oe2203sp3.x86_64 | 192.168.2.110 | NextCloud |
| 软件 | 版本 | 下载页面 |
|---|---|---|
| Docker | 20.10.23 | 下载地址 |
| Docker-compose | v2.32.0 | 下载地址 |
| NextCloud | 30.0.4 | 下载地址 |
| NextCloud-documentserver | 8.2 | 下载地址 |
| NextCloud-deck | 1.14.2 | 下载地址 |
| NextCloud-groupfolders | v18.0.8 | 下载地址 |
| NextCloud-onlyoffice | 9.5.0 | 下载地址 |
3. 部署步骤
3.1 目录准备
mkdir -pv /data/nextcloud/data/{nextcloud,nextcloud_db,nextcloud_nginx}
mkdir -pv /data/nextcloud/data/nextcloud_nginx/ssl
3.2 证书准备
3.2.1 NextCloud证书准备
注意:由于本次 NextCloud 开启了 https 的访问,所以需要使用证书,并且onlyoffice的证书必须与NextCloud的证书一致
# 准备临时目录
mkdir -pv /data/nextcloud/nextcloud_ssl && cd /data/nextcloud/nextcloud_ssl
#生成私钥
openssl genrsa -out nextcloud.genesismagic.coop.key 2048#生成CSR(证书签名请求)
openssl req -new -subj "/C=US/ST=GuangDong/L=GuangZhou/O=Your Company Name/OU=genesismagic.coop/CN=nextcloud.genesismagic.coop" -key nextcloud.genesismagic.coop.key -out nextcloud.genesismagic.coop.csr# 将带口令的私钥移除
mv nextcloud.genesismagic.coop.key nextcloud.genesismagic.coop.origin.key
openssl rsa -in nextcloud.genesismagic.coop.origin.key -out nextcloud.genesismagic.coop.key# 用Key生成自签名证书
openssl x509 -req -days 36500 -in nextcloud.genesismagic.coop.csr -signkey nextcloud.genesismagic.coop.key -out nextcloud.genesismagic.coop.crt# 处理证书--NextCloud-Nginx 使用
cp nextcloud.genesismagic.coop.key /data/nextcloud/data/nextcloud_nginx/ssl/nextcloud.genesismagic.coop.key
cp nextcloud.genesismagic.coop.crt /data/nextcloud/data/nextcloud_nginx/ssl/nextcloud.genesismagic.coop.crt
- nextcloud.genesismagic.coop.crt: 自签名的证书
- nextcloud.genesismagic.coop.csr: 证书的请求
- nextcloud.genesismagic.coop.key: 不带口令的Key
- nextcloud.genesismagic.coop.origin.key: 带口令的Key
3.2.2 onlyoffice证书准备
cd /data/nextcloud/data/onlyoffice/DocumentServer/data/certs # 如果不存在进行创建
cp /data/nextcloud/nextcloud_ssl/nextcloud.genesismagic.coop.key onlyoffice.key
cp /data/nextcloud/nextcloud_ssl/nextcloud.genesismagic.coop.origin.key onlyoffice.key.org
cp /data/nextcloud/nextcloud_ssl/nextcloud.genesismagic.coop.csr onlyoffice.csr
cp /data/nextcloud/nextcloud_ssl/nextcloud.genesismagic.coop.crt onlyoffice.crt# 直接将nextcloud生成的key crt org csr 直接改名字拿来用,已下只执行了最后两条
openssl genrsa -des3 -out onlyoffice.key 4096
openssl req -new -key onlyoffice.key -out onlyoffice.csr
cp onlyoffice.key onlyoffice.key.org
openssl rsa -in onlyoffice.key.org -out onlyoffice.key
openssl x509 -req -days 3650 -in onlyoffice.csr -signkey onlyoffice.key -out onlyoffice.crt
openssl dhparam -out dhparam.pem 2048
chmod 400 onlyoffice.key
- onlyoffice.crt: 自签名的证书
- onlyoffice.csr: 证书的请求
- onlyoffice.key: 不带口令的Key
- onlyoffice.key.org: 带口令的Key
3.3 NextCloud安装
3.3.1 Docker-Compose 文件准备
services:db:image: mariadb:10.5 # 数据库镜像版本restart: alwaysextra_hosts:- "minio.genesismagic.coop:192.168.1.95" # 外部 Minio 域名映射地址environment:- MARIADB_ROOT_PASSWORD=nextcloudPassw0D- MARIADB_DATABASE=nextcloud- MARIADB_USER=nextcloud- MARIADB_PASSWORD=nextcloudPassw0D- TZ=Asia/Shanghaivolumes:- nextcloud_db相关文章:
NextCloud服务安装与配置教程
NextCloud服务安装与配置教程 什么是 NextCloud: Nextcloud 是一款开源的私有云存储和协作平台,允许用户在自己的服务器上托管数据并管理团队协作。它可以作为一个功能丰富、安全可靠的替代方案,与商业云服务(如 Google Drive、Dropbox)相比提供更多控制和隐私保护。简单来…...
详解GPT-信息抽取任务 (GPT-3 FAMILY LARGE LANGUAGE MODELS)
GPT-3 FAMILY LARGE LANGUAGE MODELS Information Extraction 自然语言处理信息提取任务(NLP-IE):从非结构化文本数据中提取结构化数据,例如提取实体、关系和事件 [164]。将非结构化文本数据转换为结构化数据可以实现高效的数据处…...
华为数通考试模拟真题(附带答案解析)题库领取
【多选题】 管理员想要更新华为路由器的VRP版本,则正确的方法有? A管理员把路由器配置为FTP服务器,通过FTP来传输VRP软件 B:管理员把路由器置为FTP客户端,通过FTP来传输VRP软件 C:管理员把路由器配置为TFTP客户端,通过TFTP来传…...
微信小程序:正确输出<小于,大于>符号
错误写法 1、如果直接输入<符号会直接报错,>能正常使用,如图标红的是错误写法 2、输入html的<>的写法,会原样输入符号 解决方法 采用变量的方式输出 1、js写入变量 2、wxml直接写...
Flink源码解析之:如何根据算法生成StreamGraph过程
Flink源码解析之:如何根据算法生成StreamGraph过程 在我们日常编写Flink应用的时候,会首先创建一个StreamExecutionEnvironment.getExecutionEnvironment()对象,在添加一些自定义处理算子后,会调用env.execute来执行定义好的Flin…...
矩阵简单问题(Java)
问题: 顺时针打印二维方阵: 1 2 3 4 15 5 6 7 8 14 9 10 11 12 13 13 14 15 16 public class Test1 {public static void main(String[] args) {int[][] arr new int[][]{{1, 2, 3, 4,100},{5, 6, 7, 8,101},{9, 10, 11, 12,102},{13, 14, 15, 16,…...
Elasticsearch DSL版
文章目录 1.索引库操作创建索引库:删除索引库:查询索引库:修改索引库:总结 2.文档操作创建文档:查询文档:删除文档:全量修改文档:增量修改文档:总结 3.DSL查询语法&#…...
2024-12-29-sklearn学习(26)模型选择与评估-交叉验证:评估估算器的表现 今夜偏知春气暖,虫声新透绿窗纱。
文章目录 sklearn学习(26) 模型选择与评估-交叉验证:评估估算器的表现26.1 计算交叉验证的指标26.1.1 cross_validate 函数和多度量评估26.1.2 通过交叉验证获取预测 26.2 交叉验证迭代器26.2.1 交叉验证迭代器–循环遍历数据26.2.1.1 K 折26.2.1.2 重复 K-折交叉验…...
STM32CUBEIDE FreeRTOS操作教程(十二):std dynamic memory 标准动态内存
STM32CUBEIDE FreeRTOS操作教程(十二):std dynamic memory 标准动态内存 STM32CUBE开发环境集成了STM32 HAL库进行FreeRTOS配置和开发的组件,不需要用户自己进行FreeRTOS的移植。这里介绍最简化的用户操作类应用教程。以STM32F40…...
异步爬虫之aiohttp的使用
在上一篇博客我们介绍了异步爬虫的基本原理和 asyncio 的基本用法,并且在最后简单提及了使用aiohttp 实现网页爬取的过程。本篇博客我们介绍一下 aiohttp 的常见用法。 基本介绍 前面介绍的 asyncio模块,其内部实现了对 TCP、UDP、SSL协议的异步操作&a…...
【Rust自学】9.1. 不可恢复的错误以及panic!
喜欢的话别忘了点赞、收藏加关注哦,对接下来的教程有兴趣的可以关注专栏。谢谢喵!(・ω・) 9.1.1. Rust错误处理概述 Rust拥有极高的可靠性,这也延伸到了错误处理的领域。比如说在大部分情况下,Rust会迫使你…...
【老张的程序人生】一天时间,我成软考高级系统分析师
今年下半年,我心血来潮报考了软考高级系统分析师。彼时的我,工作繁忙至极,一周十四节课,班主任的职责压身,还兼任教学管理事务,每日忙得晕头转向,那点可怜的闲暇时光,也都奉献给了游…...
vue使用el-select下拉框自定义复选框
在 Vue 开发中,高效且美观的组件能极大地提升用户体验和开发效率。在vue中使用elementplus 的 el-select下拉框实现了一个自定义的多选下拉框组件。 一、代码功能概述 这段代码创建了一个可多选的下拉框组件,通过el-select和el-checkbox-group结合的方…...
k8s基础(2)—Kubernetes-Namespace
一、Namespace概述 名字空间 在 Kubernetes 中,名字空间(Namespace) 提供一种机制,将同一集群中的资源划分为相互隔离的组。 同一名字空间内的资源名称要唯一,但跨名字空间时没有这个要求。 名字空间作用域仅针对带有…...
APM for Large Language Models
APM for Large Language Models 随着大语言模型(LLMs)在生产环境中的广泛应用,确保其可靠性和可观察性变得至关重要。应用性能监控(APM)在这一过程中发挥了关键作用,帮助开发者和运维人员深入了解LLM系统的…...
Spark Runtime Filter
Runtime Filter 参考链接: https://docs.google.com/document/d/16IEuyLeQlubQkH8YuVuXWKo2-grVIoDJqQpHZrE7q04/edit?tabt.0https://www.modb.pro/db/557718https://issues.apache.org/jira/browse/SPARK-32268https://github.com/apache/spark/pull/35789https…...
AI大模型系列之七:Transformer架构讲解
目录 Transformer网络是什么? 输入模块结构: 编码器模块结构: 解码器模块: 输出模块结构: Transformer 具体是如何工作的? Transformer核心思想是什么? Transformer的代码架构 自注意力机制是什么…...
基于51单片机(STC12C5A60S2)和8X8彩色点阵屏(WS2812B驱动)的小游戏《贪吃蛇》(普中开发板矩阵按键控制)
目录 系列文章目录前言一、效果展示二、原理分析三、各模块代码1、定时器02、矩阵按键3、8X8彩色点阵屏 四、主函数总结 系列文章目录 前言 《贪吃蛇》,一款经典的、怀旧的小游戏,单片机入门必写程序。 以《贪吃蛇》为载体,熟悉各种屏幕的使…...
遇到复杂的 递归查询sql 需要oracle 转pgsql 可以把数据表结构给ai
遇到复杂的 递归查询sql 需要oracle 转pgsql 可以把数据表结构给ai 并且 建立备份表 把需要的很少的数据放到表里面 这样 ai 可以很好的判断sql 咋写 还可以,让ai解释oracle sql 然后拿到描述和表和字段,给ai让他生成pgsql 的sql,亲测有效...
Zynq PS端外设之GPIO
1. GPIO(通用输入/输出) GPIO外设有4个Bank,Bank0/1通过MIO连接到PS的引脚上;Bank2/3通过EMIO连接到PL的引脚上。 注意:Bank1的电平要改成LVCOMS 1.8 GPIO寄存器 寄存器: DATA_RO: 读取GPIO的输…...
DeepSeek 赋能智慧能源:微电网优化调度的智能革新路径
目录 一、智慧能源微电网优化调度概述1.1 智慧能源微电网概念1.2 优化调度的重要性1.3 目前面临的挑战 二、DeepSeek 技术探秘2.1 DeepSeek 技术原理2.2 DeepSeek 独特优势2.3 DeepSeek 在 AI 领域地位 三、DeepSeek 在微电网优化调度中的应用剖析3.1 数据处理与分析3.2 预测与…...
反向工程与模型迁移:打造未来商品详情API的可持续创新体系
在电商行业蓬勃发展的当下,商品详情API作为连接电商平台与开发者、商家及用户的关键纽带,其重要性日益凸显。传统商品详情API主要聚焦于商品基本信息(如名称、价格、库存等)的获取与展示,已难以满足市场对个性化、智能…...
React第五十七节 Router中RouterProvider使用详解及注意事项
前言 在 React Router v6.4 中,RouterProvider 是一个核心组件,用于提供基于数据路由(data routers)的新型路由方案。 它替代了传统的 <BrowserRouter>,支持更强大的数据加载和操作功能(如 loader 和…...
高频面试之3Zookeeper
高频面试之3Zookeeper 文章目录 高频面试之3Zookeeper3.1 常用命令3.2 选举机制3.3 Zookeeper符合法则中哪两个?3.4 Zookeeper脑裂3.5 Zookeeper用来干嘛了 3.1 常用命令 ls、get、create、delete、deleteall3.2 选举机制 半数机制(过半机制࿰…...
深入理解JavaScript设计模式之单例模式
目录 什么是单例模式为什么需要单例模式常见应用场景包括 单例模式实现透明单例模式实现不透明单例模式用代理实现单例模式javaScript中的单例模式使用命名空间使用闭包封装私有变量 惰性单例通用的惰性单例 结语 什么是单例模式 单例模式(Singleton Pattern&#…...
服务器硬防的应用场景都有哪些?
服务器硬防是指一种通过硬件设备层面的安全措施来防御服务器系统受到网络攻击的方式,避免服务器受到各种恶意攻击和网络威胁,那么,服务器硬防通常都会应用在哪些场景当中呢? 硬防服务器中一般会配备入侵检测系统和预防系统&#x…...
Mobile ALOHA全身模仿学习
一、题目 Mobile ALOHA:通过低成本全身远程操作学习双手移动操作 传统模仿学习(Imitation Learning)缺点:聚焦与桌面操作,缺乏通用任务所需的移动性和灵活性 本论文优点:(1)在ALOHA…...
在 Spring Boot 项目里,MYSQL中json类型字段使用
前言: 因为程序特殊需求导致,需要mysql数据库存储json类型数据,因此记录一下使用流程 1.java实体中新增字段 private List<User> users 2.增加mybatis-plus注解 TableField(typeHandler FastjsonTypeHandler.class) private Lis…...
Kubernetes 网络模型深度解析:Pod IP 与 Service 的负载均衡机制,Service到底是什么?
Pod IP 的本质与特性 Pod IP 的定位 纯端点地址:Pod IP 是分配给 Pod 网络命名空间的真实 IP 地址(如 10.244.1.2)无特殊名称:在 Kubernetes 中,它通常被称为 “Pod IP” 或 “容器 IP”生命周期:与 Pod …...
认识CMake并使用CMake构建自己的第一个项目
1.CMake的作用和优势 跨平台支持:CMake支持多种操作系统和编译器,使用同一份构建配置可以在不同的环境中使用 简化配置:通过CMakeLists.txt文件,用户可以定义项目结构、依赖项、编译选项等,无需手动编写复杂的构建脚本…...
