一、前言

Nextcloud 是一款开源的私有云存储和协作平台,旨在为用户提供安全、可控的数据存储和共享服务。它类似于商业的云存储服务(如 Dropbox、Google Drive),但用户可以自行部署和管理服务器,从而更好地控制数据的存储和访问。

主要功能

1. 文件存储与共享:

- 用户可以在 Nextcloud 上存储文件,并通过链接或用户组进行共享。

- 支持文件夹共享、版本控制和文件恢复。

2. 协作功能:

- 支持文档在线编辑,与 LibreOffice Online 集成,用户可以实时协作编辑文档。

- 提供日历、联系人管理等功能,方便团队协作。

3. 安全性:

- 数据存储在用户自己的服务器上,用户可以完全控制数据的访问和存储。

- 支持端到端加密,确保数据传输和存储的安全性。

4. 扩展性:

- Nextcloud 提供了丰富的扩展应用,用户可以根据需求安装和使用各种插件,例如笔记应用、任务管理、聊天功能等。

5. 多平台支持:

- 提供 Web、桌面(Windows、macOS、Linux)和移动(iOS、Android)客户端,方便用户随时随地访问数据。

二、安装

2.1 拉取镜像

docker pull docker.1ms.run/nextcloud:31.0.2

2.2 运行启动

docker run -d --name nextcloud \
    -p 1888:80 \
    --restart=on-failure:5 \
    -v /share/nextcloud:/var/www/html/data \
    -v /share/cotainer/nextcloud:/var/www/html \
    docker.1ms.run/nextcloud:31.0.2

-d 后台进程运行
-p 映射端口, 将容器80端口映射为主机的31888端口,可以自行修改端口,不过防火墙需要放通。
-v 挂载目录,将容器/var/www/html挂载到主机/mnt/sde/nextcloud下面
--name 名称,指定容器的名称为nextcloud
nextcloud 使用的基础镜像。

使用cron后台任务

docker exec -u www-data nextcloud php cron.php
vim /etc/config/crontab
*/5 * * * * docker exec -u www-data nextcloud php cron.php
sudo crontab /etc/config/crontab
sudo /etc/init.d/crond.sh restart

作者:Laser5252 https://www.bilibili.com/read/cv25645178/ 出处:bilibili

定时教程地址

2.3 配置nextcloud

在浏览器地址栏输入上一步骤新建站点时所输入的域名,进入NextCloud安装向导。创建管理员账号,配置数据目录和数据库。

2.4 点击安装,大约需要1分钟。

2.5 安装推荐的应用(可选)。

2.6 完成安装。

单击左上角的文件图标,即可开始使用NextCloud。

离线安装插件

插件下载官网:All apps - App Store - Nextcloud

压缩包放到:

/share/cotainer/nextcloud/apps (/var/www/html/apps)

解压:

tar -zvxf unsplash.tar.gz

修改用户名组:

chown -R 33:33 unsplash/

删除多余压缩包:

rm unsplash.tar.gz

解决:nextcloud响应慢问题

docker exec -u 10000 -it 容器id /bin/bash

在/var/www/html目录下输入:

php occ config:app:set files max_chunk_size --value 0