
elestio/nextcloudNextCloud 是一个自托管的生产力平台,结合了 Dropbox、Google Drive 等消费级解决方案的便利性和易用性,同时提供企业所需的安全性、隐私性和控制力。通过自托管部署,用户可完全掌控数据存储与访问,适用于安全文件传输、团队协作及个人数据管理等场景。本镜像由 Elestio 验证和打包,确保稳定性与兼容性,可快速部署并投入使用。
以下是使用 Docker Compose 部署 NextCloud 的配置示例,包含数据库(MySQL)、应用服务和定时任务服务:
yamlversion: '3.3' services: db: image: elestio/mysql:latest restart: always command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW volumes: - ./db:/var/lib/mysql # 数据库数据持久化 environment: - MYSQL_ROOT_PASSWORD=${ADMIN_PASSWORD} # 数据库 root 密码 - MYSQL_PASSWORD=${ADMIN_PASSWORD} # NextCloud 数据库用户密码 - MYSQL_DATABASE=nextcloud # 数据库名称 - MYSQL_USER=nextcloud # 数据库用户 app: image: elestio/nextcloud:${SOFTWARE_VERSION_TAG} restart: always ports: - 172.17.0.1:22000:80 # 宿主机端口映射(22000 可自定义) links: - db # 链接数据库服务 volumes: - ./nextcloud:/var/www/html # NextCloud 应用文件 - ./apps:/var/www/html/custom_apps # 自定义应用存储 - ./config:/var/www/html/config # 配置文件持久化 - ./data:/var/www/html/data # 用户数据存储 environment: - MYSQL_PASSWORD=${ADMIN_PASSWORD} # 数据库用户密码(与 db 服务一致) - MYSQL_DATABASE=nextcloud # 数据库名称 - MYSQL_USER=nextcloud # 数据库用户 - MYSQL_HOST=db # 数据库服务地址 - NEXTCLOUD_TRUSTED_DOMAINS=${DOMAIN} # 受信任域名(如 your.domain) - OVERWRITEPROTOCOL=https # 强制使用 HTTPS(需提前配置证书) cron: image: elestio/nextcloud:${SOFTWARE_VERSION_TAG} restart: always volumes: - ./nextcloud:/var/www/html - ./apps:/var/www/html/custom_apps - ./config:/var/www/html/config - ./data:/var/www/html/data entrypoint: /cron.sh # 定时任务服务,处理后台任务(如文件扫描、通知)
| 变量名 | 示例值 | 说明 |
|---|---|---|
| SOFTWARE_VERSION_TAG | latest | NextCloud 镜像版本标签 |
| DOMAIN | your.domain | 访问 NextCloud 的域名 |
| ADMIN_PASSWORD | your-password | 管理员密码(数据库与应用共用) |
部署完成后,通过以下地址访问 NextCloud Web 界面:
[***](替换 your-domain 为实际域名或服务器 IP,22000 为 Docker Compose 中映射的端口)。
NextCloud 容器日志输出至标准输出(stdout),可通过以下命令查看:
bashdocker-compose logs -f
停止服务:
bashdocker-compose down
基于 Docker Compose 的目录挂载特性,备份和恢复操作可通过文件系统直接完成:
bashdocker-compose down
bashzip -r nextcloud_backup.zip . # 备份当前目录下所有数据(含数据库、配置、用户文件)
bashunzip nextcloud_backup.zip -d /path/to/original/folder # 替换为实际目录
bashdocker-compose up -d
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务