
Nextcloud 是什么?
Nextcloud 是一个开源、自我托管的文件共享和通信平台,允许您访问和同步您的文件、联系人、日历,并在所有设备上进行通信。
简单来说,Nextcloud 是一个以文件为核心的协作服务平台。
准备工作
基础配置:
- 一台服务器(1Core 1GB+) 5GB+存储
- 域名和对应SSL证书
- Docker
配置步骤
一、安装 Docker
一键安装脚本
bash <(curl -sSL linuxmirrors.cn/docker.sh)配置 Docker 镜像源加速
vi编辑器:按i进入插入模式 输入后 按ESC进入命令模式 输入:wq 保存并退出 :q 仅退出
编辑 /etc/docker/daemon.json
# 编辑或创建文件 (如果不存在) vi /etc/docker/daemon.json编辑镜像源
{ "registry-mirrors": [ "https://docker.xuanyuan.me", "docker.1panel.live", "https://mirror.ccs.tencentyun.com" ] }
二、安装 Nginx
方式一、Docker 安装 Nginx 容器
# 拉取镜像 docker pull nginx:latest # 创建目录 mkdir -p /home/nginx/{conf,log,html} # 创建容器 替换8080为你自己想要开放的端口 (防火墙放行TCP+UDP) docker run \ -p 8080:80 \ --name nginx \ -v /home/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \ -v /home/nginx/conf/conf.d:/etc/nginx/conf.d \ -v /home/nginx/log:/var/log/nginx \ -v /home/nginx/html:/usr/share/nginx/html \ -d nginx:latest方式二、本地安装 Nginx 服务
RHEL / CentOS
yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel pcre pcre-devel cd /usr/local/src wget http://nginx.org/download/nginx-1.22.0.tar.gz tar -zxvf nginx-1.22.0.tar.gz cd nginx-1.22.0 /configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module make && make install sudo vi /lib/systemd/system/nginx.service编辑 nginx.service
[Unit] Description=nginx After=network.target [Service] Type=forking ExecStart=/usr/local/nginx/sbin/nginx ExecReload=/usr/local/nginx/sbin/nginx -s reload ExecStop=/usr/local/nginx/sbin/nginx -s quit PrivateTmp=true [Install] WantedBy=multi-user.target启动服务
sudo systemctl enable nginx.serviceUbuntu / Debian
sudo apt update sudo apt install nginx -y # 自启动服务 sudo systemctl start nginx sudo systemctl enable nginx # 防火墙放行 HTTP/HTTPS sudo ufw allow 'Nginx Full' sudo ufw enable
三、安装 Nextcloud 容器
使用 Nextcloud AIO 镜像安装,该镜像内置了 Nginx / PHP / SQLite
# 创建数据目录 mkdir -p /data/nextcloud/{data,config,apps} # 启动 Nextcloud 容器 修改端口和管理员账号密码 docker run -d \ --name nextcloud \ --restart always \ -p 8081:80 \ -v /data/nextcloud/data:/var/www/html \ -v /data/nextcloud/config:/var/www/html/config \ -v /data/nextcloud/apps:/var/www/html/custom_apps \ -e NEXTCLOUD_ADMIN_USER="admin" \ -e NEXTCLOUD_ADMIN_PASSWORD="your_strong_password" \ nextcloud:latest配置 Nginx 反向代理
Nginx 目录 /etc/nginx/sites-available/nextcloudconf
如果你使用 Openresty 目录 /etc/openresty/conf.d/nextcloud.conf
# 编辑配置文件 vi /etc/nginx/sites-available/nextcloud.conf配置反向代理
server { listen 443 ssl; server_name 你的域名; # SSL 证书路径 ssl_certificate /你的证书路径/fullchain.pem; ssl_certificate_key /你的证书路径/privkey.pem; # 反向代理到 Nextcloud location / { proxy_pass http://localhost:8081; # Nextcloud 容器 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; # Nextcloud 头部 proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_http_version 1.1; } } # HTTP 重定向到 HTTPS server { listen 80; server_name 你的域名; return 301 https://$host$request_uri; }配置 SSL 和端口
将 SSL证书放在配置文件中位置,在服务器防火墙中放开80端口
安装数据库 MySQL/MariaDB PostgreSQL (可选)
Docker 安装
# Mysql docker pull mysql:latest docker run -itd --name MYSQL -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456admin mysql # Mariadb docker pull mariadb:latest docker run --name MARIADB -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456admin mariadb # PostgreSQL docker pull postgres:latest # PostgreSQL 数据卷 docker volume create postgre-data # PostgreSQL 容器 docker run -id --name=POSTGRESQL -v postgre-data:/var/lib/postgresql/data -p 5432:5432 -e POSTGRES_PASSWORD=123456admin -e LANG=C.UTF-8 postgres
四、安装 Nextcloud
进入网站域名
如果 HTTPS 和 反向代理服务配置成功,会出现安装向导页面

输入管理员账号密码,输入数据库信息,即可安装成功

四、配置 Nextcloud Q&A
如何配置用户配额 (存储空间)
进入账号管理

左下角选择 "账号管理设置"

如何注册新账号
在应用中搜索 "Registration" 安装即可
怎么开启 WebDav 服务
在文件 左下角选择 "文件设置"
你的博客账号注册到 Nextcloud 同步是怎么实现的
具体可以参考Nextcloud API。灯狐苑博客使用Typecho插件实现注册时同步Nextcloud (自用)
最新评论