windows系统,家庭自用NAS。本地局域网 Docker安装nextcloud
windows系统,家庭自用NAS。本地局域网 Docker安装nextcloud
1、docker安装
太简单了,直接去搜一搜。
docker-compose 相关命令
docker-compose down
docker compose up -d
2、还是使用老的
在你需要挂载的目录下,新建一个文件,文件名为:docker-compose.yaml
docker-compose.yaml
复制下面的内容
version: '3.2'networks:default:name: nextcloudservices:app:image: nextcloud:latestrestart: unless-stoppedvolumes:- ./opt/Nextcloud_docker/app:/var/www/htmlenvironment:- MYSQL_PASSWORD=123456 # 按需修改- MYSQL_DATABASE=nextcloud- MYSQL_USER=nextcloud- MYSQL_HOST=db- TZ=Asia/Shanghaiports:- 8888:80 # 按需修改networks:- defaultcache:image: redis:latestrestart: unless-stoppedexpose:- "6379" # 可用此默认。因为这是暴露而不是映射volumes:- ./opt/Nextcloud_docker/cache:/datacommand: redis-server --requirepass '123456' # 按需修改environment:- TZ=Asia/Shanghainetworks:- defaultdb:image: mariadb:latestrestart: unless-stopped# 下面的command与官网略有不同。它将有助于避免MYSQL数据库的4047报错。command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW --innodb-file-per-table=1 --skip-innodb-read-only-compressedvolumes:- ./opt/Nextcloud_docker/db:/var/lib/mysqlenvironment:- MYSQL_ROOT_PASSWORD=123456 # 按需修改- MYSQL_PASSWORD=123456 # 按需修改- MYSQL_DATABASE=nextcloud- MYSQL_USER=nextcloud- TZ=Asia/Shanghainetworks:- default
这个最好放到你要挂载的盘和目录,然后进行docker-compose up -d
3、配置nextcloud的config
这个就是在T:\nextcloud\opt\Nextcloud_docker\app\config\config.php
自己找找看吧
config.php
<?php
$CONFIG = array ('htaccess.RewriteBase' => '/','memcache.local' => '\\OC\\Memcache\\APCu','memcache.distributed' => '\\OC\\Memcache\\Redis','memcache.locking' => '\\OC\\Memcache\\Redis','redis' => array('host' => 'cache','port' => '6379','password' => '123456',),'default_phone_region' => 'CN','apps_paths' => array (0 => array ('path' => '/var/www/html/apps','url' => '/apps','writable' => false,),1 => array ('path' => '/var/www/html/custom_apps','url' => '/custom_apps','writable' => true,),),'upgrade.disable-web' => true,'instanceid' => 'ocx4d6ffgkjy','passwordsalt' => 'traaLklgOFTY5ji+aOkkCpW9uOn1CI','secret' => 'JuQWPi1iMXPitSfPhReWClkgjiLXXqrDUqHUwJrxgpsvAsPT','trusted_domains' => array (0 => 'localhost:8888',),'datadirectory' => '/var/www/html/data','dbtype' => 'mysql','version' => '29.0.1.1','overwrite.cli.url' => 'http://localhost:8888','dbname' => 'nextcloud','dbhost' => 'db','dbport' => '','dbtableprefix' => 'oc_','mysql.utf8mb4' => true,'dbuser' => 'nextcloud','dbpassword' => '123456','installed' => true,
);
执行定时任务
这个东西最好使用ubuntu系统,wsl2 可以搞个,不然windows很麻烦。
下面我是用ubuntu处理的定时任务,这个定时任务主要处理文件扫描,也就是下面直接移动复制文件到容器挂载的目录中,文件扫描就能把这个显示在web上。
docker exec -u www-data nextcloud-app-1 php cron.php
crontab -e */5 * * * * docker exec -u www-data nextcloud-app-1 php cron.php
tip: windows下的定时任务脚本
在Windows中使用schtasks
创建每5分钟执行一次的任务,您可以按照以下步骤操作。这里我们使用/MIN
参数来设置任务的频率。由于schtasks
没有直接支持*/5 * * * *
这样的crontab风格的分钟设置,我们将使用一个简单的循环脚本来实现每5分钟执行一次。
-
创建批处理脚本:
首先,创建一个批处理脚本文件,例如run-docker-cron.bat
,并在其中添加以下内容:@echo off docker exec -u www-data nextcloud-app-1 php cron.php
-
使用
schtasks
创建任务:
打开命令提示符或PowerShell,然后使用以下命令创建任务。这个命令将创建一个名为MyDockerCronTask
的任务,它会每5分钟运行一次批处理脚本:schtasks /create /tn "MyDockerCronTask" /tr "C:\Users\67317\Desktop\ai\nextcloud\run-docker-cron.bat" /sc minute /mo 5
请将
C:\path\to\run-docker-cron.bat
替换为您的批处理脚本实际所在的路径。 -
运行任务(测试):
您可以手动运行任务来测试它是否按预期工作:schtasks /run /tn "MyDockerCronTask"
-
查看任务:
使用以下命令来查看任务的详细信息:schtasks /query /tn "MyDockerCronTask"
-
修改任务(如果需要):
如果需要修改任务的触发时间或其他设置,您可以使用schtasks
的/change
选项:schtasks /change /tn "MyDockerCronTask" /mo 5
-
删除任务(如果需要):
如果需要删除任务,可以使用/delete
选项:schtasks /delete /tn "MyDockerCronTask" /f
请注意,schta sks` 命令可能需要管理员权限来执行。如果您在执行上述命令时遇到权限问题,请以管理员身份运行命令提示符或PowerShell。
此外,确保您的批处理脚本文件路径正确,并且您的Docker命令可以在命令行中直接执行。如果Docker命令需要特定的环境变量或工作目录,请确保在批处理脚本中指定这些条件。
5、修改可信域名
解决方法:修改config文件下的config.php
1、修改trusted_domains
'trusted_domains' => array (0 => 'localhost:8888',1 => '192.168.3.111:8888',),
6、处理移动文件问题
因为本人这个电脑搞了1个T的固态,5个T的机械硬盘。
所以,在一个备份的1个T的机械硬盘中,使用docker compose up -d命令。将当前目录挂载到了nextcloud服务中。
1、然后将其他之前存储的东西,直接粘贴复制到。
T:\nextcloud\opt\Nextcloud_docker\app\data\root\files
相应的你要修改自己的地址目录。
T:\nextcloud\opt\Nextcloud_docker\app\data\root\files
这个root就是 root用户。
2、然后你就等你的定时任务刷新。
就是上面的定时任务,会进行文件扫描,。那么一切大功告成。
谢谢大家,如果有用可以点个赞或者收藏。
有问题,一起交流。
相关文章:

windows系统,家庭自用NAS。本地局域网 Docker安装nextcloud
windows系统,家庭自用NAS。本地局域网 Docker安装nextcloud 1、docker安装 太简单了,直接去搜一搜。 docker-compose 相关命令 docker-compose down docker compose up -d2、还是使用老的 在你需要挂载的目录下,新建一个文件,…...

迅狐跨境商城系统|全平台兼容|前端采用uni-app跨端框架,后端采用ThinkPHP5框架
高效实现全平台兼容的迅狐跨境商城系统 迅狐跨境商城系统是一款专为跨境电商企业设计的全平台兼容系统。其前端采用uni-app跨端框架,后端采用ThinkPHP5框架,旨在实现高效的开发和运营管理。 1. 全平台兼容的前端设计 迅狐跨境商城系统的前端采用uni-a…...

Elixir学习笔记——进程(Processes)
在 Elixir 中,所有代码都在进程内运行。进程彼此隔离,彼此并发运行并通过消息传递进行通信。进程不仅是 Elixir 中并发的基础,而且还提供了构建分布式和容错程序的方法。 Elixir 的进程不应与操作系统进程混淆。Elixir 中的进程在内存和 CPU…...

困惑度作为nlp指标的理解示例
为了更清晰地说明困惑度的计算过程以及如何通过困惑度判断模型的优劣,我们可以通过一个简单的例子来演示。假设我们有一个非常简单的文本语料库和两个基础的语言模型进行比较。 示例文本 假设我们的文本数据包括以下两个句子: “cat sits on the mat”…...

01 Pytorch 基础
paddle不需要放数据到gpu! 区别:1.batch_norlization 不同 2. 1.数据处理 1.取一个数据,以及计算大小 (剩下的工作,取batch,pytorch会自动做好了) 2.模型相关 如何得到结果 3.模型训练/模型…...

STL——set、map、multiset、multimap的介绍及使用
文章目录 关联式容器键值对树形结构与哈希结构setset的介绍set的使用set的模板参数列表set的构造set的使用set的迭代器使用演示 multisetmultiset演示 mapmap的定义方式map的插入map的查找map的[ ]运算符重载map的迭代器遍历multimapmultimap的介绍multimap的使用 在OJ中的使用…...
使用C语言,写一个类似Linux中执行cat命令的类似功能
一、详细的代码案例 #include <stdio.h> #include <stdlib.h> #include <string.h>// 函数声明 void cat_file(const char *filename);int main(int argc, char *argv[]) {if (argc < 2) {fprintf(stderr, "Usage: %s filename1 [filename2 ...]\n&…...

【Android】Android系统性学习——Android系统架构
前言 部分内容参考《Android进阶解密》 – 刘望舒 1. Android版本 官方链接:https://developer.android.com/studio/releases/platforms 里面有各个版本的官方文档,有些新功能的用法在这里面。 现在做安卓11,有时候需要向下兼容 2. AOSP …...

鸿蒙应用开发
学习视频: 00.课程介绍_哔哩哔哩_bilibili 官网:开发者文档中心 | 华为开发者联盟 (huawei.com) 开发工具 :DevEcoStudio , 类似Jetbrains 全家桶 ArkTS开发语言 :(基于TS,集成了前端语言…...

索引失效有效的11种情况
1全职匹配我最爱 是指 where 条件里 都是 ,不是范围(比如>,<),不是 不等于,不是 is not null,然后 这几个字段 建立了联合索引 ,而且符合最左原则。 那么就要比 只建…...

字符数组基础知识及题目
死识。。。 字符该如何存储呢?这一点我们在以前就接触过了。用char来存储。 如何输入一个单词呢? char a[10002]; scanf("%s",a); 就不用地址符了。 如何输入句子呢? char a[100002]; gets(a); gets是读入句子的,…...
一个简单的玩具机器人代码
编写一个玩具机器人脚本通常取决于机器人的硬件、接口和具体功能。然而,由于我们不能直接控制一个真实的硬件机器人,所以只是写一个模拟的C语言脚本示例,该脚本描述了一个简单的玩具机器人可能执行的一些基本操作。 假设我们的“玩具机器人”…...

设计模式-装饰器模式Decorator(结构型)
装饰器模式(Decorator) 装饰器模式是一种结构模式,通过装饰器模式可以在不改变原有类结构的情况下向一个新对象添加新功能,是现有类的包装。 图解 角色 抽象组件:定义组件的抽象方法具体组件:实现组件的抽象方法抽象装饰器&…...
RK3588开发板中使用Qt对zip文件进行解压
操作步骤: 下载源码quazip-0.7.3.zip ,在网上找找下载地址上传源码进行解压,然后使用命令 cd quazip-0.7.3 qmake make主要用的是quazip-0.7.3/quazip这个里面的源码,然后把源码加入到自己创建的qt项目pro中,导入方式…...

三、网络服务协议
目录 一、FTP:文件传输协议 二、Telnet:远程登录协议 三、AAA认证 四、DHCP 五、DNS 六、PPP协议 七、ISIS协议 一、FTP:文件传输协议 C/S架构,现多用于企业内部的资料共享和网络设备的文件传输,企业内部搭建一…...

C++初学者指南第一步---1. C++开发环境设置
C初学者指南第一步—1. C开发环境设置 目录 C初学者指南第一步---1. C开发环境设置1.1 工具1.1.1 代码编辑器和IDE1.1.2 Windows1.1.3 命令行界面 1.2 编译器1.2.1 gcc/g (支持Linux/Windows/MacOSX)1.2.2 clang/clang (支持Linux/Windows/MacOS)1.2.3 Microsoft Visual Studio…...

二维数组与指针【C语言】
二维数组与指针 一维数组一维数组与指针二维数组二维数组与指针总结补充判断以下方式是否正确打印二维数组一维数组 int arr[] = {11, 22, 33, 44};arr:首地址(第一个元素的地址) 一维数组与指针 int arr[] = {11, 22, 33, 44};因为,arr表示的是首地址,等价于 int* p =…...
解决linux下安装apex库报错:ModuleNotFoundError: No module named ‘packaging‘
使用如下命令安装apex: git clone https://github.com/NVIDIA/apex cd apex pip install -v --disable-pip-version-check --no-cache-dir --global-option"--cpp_ext" --global-option"--cuda_ext" ./ 报错: Running command py…...

React基础教程(07):条件渲染
1 条件渲染 使用条件渲染,结合TodoList案例,进行完善,实现以下功能: 当列表中的数据为空的时候,现实提示信息暂无待办事项当列表中存在数据的时候,提示信息消失 这里介绍三种实现方式。 注意这里的Empty是…...

回归预测 | Matlab实现NGO-HKELM北方苍鹰算法优化混合核极限学习机多变量回归预测
回归预测 | Matlab实现NGO-HKELM北方苍鹰算法优化混合核极限学习机多变量回归预测 目录 回归预测 | Matlab实现NGO-HKELM北方苍鹰算法优化混合核极限学习机多变量回归预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.Matlab实现NGO-HKELM北方苍鹰算法优化混合核极限…...
内存分配函数malloc kmalloc vmalloc
内存分配函数malloc kmalloc vmalloc malloc实现步骤: 1)请求大小调整:首先,malloc 需要调整用户请求的大小,以适应内部数据结构(例如,可能需要存储额外的元数据)。通常,这包括对齐调整,确保分配的内存地址满足特定硬件要求(如对齐到8字节或16字节边界)。 2)空闲…...

如何将联系人从 iPhone 转移到 Android
从 iPhone 换到 Android 手机时,你可能需要保留重要的数据,例如通讯录。好在,将通讯录从 iPhone 转移到 Android 手机非常简单,你可以从本文中学习 6 种可靠的方法,确保随时保持连接,不错过任何信息。 第 1…...

3-11单元格区域边界定位(End属性)学习笔记
返回一个Range 对象,只读。该对象代表包含源区域的区域上端下端左端右端的最后一个单元格。等同于按键 End 向上键(End(xlUp))、End向下键(End(xlDown))、End向左键(End(xlToLeft)End向右键(End(xlToRight)) 注意:它移动的位置必须是相连的有内容的单元格…...
Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析
Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析 一、第一轮提问(基础概念问题) 1. 请解释Spring框架的核心容器是什么?它在Spring中起到什么作用? Spring框架的核心容器是IoC容器&#…...

Docker 本地安装 mysql 数据库
Docker: Accelerated Container Application Development 下载对应操作系统版本的 docker ;并安装。 基础操作不再赘述。 打开 macOS 终端,开始 docker 安装mysql之旅 第一步 docker search mysql 》〉docker search mysql NAME DE…...

使用Spring AI和MCP协议构建图片搜索服务
目录 使用Spring AI和MCP协议构建图片搜索服务 引言 技术栈概览 项目架构设计 架构图 服务端开发 1. 创建Spring Boot项目 2. 实现图片搜索工具 3. 配置传输模式 Stdio模式(本地调用) SSE模式(远程调用) 4. 注册工具提…...

接口自动化测试:HttpRunner基础
相关文档 HttpRunner V3.x中文文档 HttpRunner 用户指南 使用HttpRunner 3.x实现接口自动化测试 HttpRunner介绍 HttpRunner 是一个开源的 API 测试工具,支持 HTTP(S)/HTTP2/WebSocket/RPC 等网络协议,涵盖接口测试、性能测试、数字体验监测等测试类型…...
Caliper 负载(Workload)详细解析
Caliper 负载(Workload)详细解析 负载(Workload)是 Caliper 性能测试的核心部分,它定义了测试期间要执行的具体合约调用行为和交易模式。下面我将全面深入地讲解负载的各个方面。 一、负载模块基本结构 一个典型的负载模块(如 workload.js)包含以下基本结构: use strict;/…...

论文阅读:LLM4Drive: A Survey of Large Language Models for Autonomous Driving
地址:LLM4Drive: A Survey of Large Language Models for Autonomous Driving 摘要翻译 自动驾驶技术作为推动交通和城市出行变革的催化剂,正从基于规则的系统向数据驱动策略转变。传统的模块化系统受限于级联模块间的累积误差和缺乏灵活性的预设规则。…...
华为OD最新机试真题-数组组成的最小数字-OD统一考试(B卷)
题目描述 给定一个整型数组,请从该数组中选择3个元素 组成最小数字并输出 (如果数组长度小于3,则选择数组中所有元素来组成最小数字)。 输入描述 行用半角逗号分割的字符串记录的整型数组,0<数组长度<= 100,0<整数的取值范围<= 10000。 输出描述 由3个元素组成…...