
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
本文档介绍基于https://hub.docker.com/_/nextcloud/%E6%9E%84%E5%BB%BA%E7%9A%84%E8%87%AA%E5%AE%9A%E4%B9%89Docker%E9%95%9C%E5%83%8F%E3%80%82%E7%89%B9%E5%88%AB%E6%84%9F%E8%B0%A2Nextcloud%E5%BC%80%E5%8F%91%E5%9B%A2%E9%98%9F%E7%9A%84%E6%9D%B0%E5%87%BA%E5%B7%A5%E4%BD%9C%EF%BC%81
为您所有数据提供安全的存储空间。从任何设备按您的方式访问和共享文件、日历、联系人、邮件等。
!logo
目前支持基于Apache的Nextcloud Docker镜像标签。
apache标签包含基础的Nextcloud安装及Apache Web服务器,设计为易于使用且能快速启动,也是latest标签和未指定具体类型的版本标签的默认选项。
您可选择以下不同功能版本:
apache:在官方Nextcloud Apache镜像基础上,添加推荐的PHP设置及每15分钟运行Nextcloud cron.php的推荐定时任务imap:在apache镜像基础上增加IMAP认证功能smb:在apache镜像基础上增加SAMBA认证功能preview:在apache镜像基础上增加基于Imagik的图片和视频文件预览功能(不包含Libre Office)full:在apache镜像基础上整合imap、smb和preview的所有功能本镜像设计用于微服务环境。建议创建卷或挂载本地文件夹存储Nextcloud的数据、配置和应用,否则删除容器时将丢失数据和配置。关于如何使用docker-compose、docker run及systemd运行Docker容器,可参考https://github.com/MiGoller/dc-systemd-template%E3%80%82
apache镜像包含Web服务器并暴露80端口,启动容器命令如下:
console$ docker run -d -p 8080:80 migoller/nextcloud
此时可通过http://localhost:8080/访问Nextcloud,但需连接现有MySQL服务器。
可在命令行挂载卷并设置环境变量:
console$ docker run -it --name <container_name> \ --link <your_MySql_containter>:db_nextcloud \ -v <local_path_to_nextcloud_storage_folder>:/var/www/html/data \ -v <local_path_to_nextcloud_config_folder>/config:/var/www/html/config \ -v <local_path_to_nextcloud_config_folder>/apps:/var/www/html/custom_apps \ -e NEXTCLOUD_ADMIN_USER=<your_nextcloud_admin_username> \ -e NEXTCLOUD_ADMIN_PASSWORD=<your_nextcloud_admin_password> \ -e MYSQL_DATABASE=<your_MySql_database_name> \ -e MYSQL_USER=<your_MySql_username> \ -e MYSQL_PASSWORD=<your_MySql_password> \ -e MYSQL_HOST=db_nextcloud \ -p 8080:80 \ migoller/nextcloud
如前所述,apache镜像包含Apache Web服务器,但不含MySQL或MariaDB等数据库管理系统。可通过docker-compose轻松创建、部署和运行Nextcloud栈。docker-compose cli用于管理多容器应用,将docker run cli中的选项移至docker-compose.yml文件便于复用,详见docker-compose文档。建议在env-files中声明环境变量以便复用。示例文件及更多详情见docker-compose示例,确保为容器设置不同密码。
首先需创建符合本地需求的docker-compose.yml,可基于示例文件修改:
yamlversion: '2' services: db: image: mysql env_file: - MySQL.env volumes: - ./datadir:/var/lib/mysql app: image: migoller/nextcloud:apache env_file: - MySQL.env - Nextcloud.env volumes: - ./data:/var/www/html/data - ./config:/var/www/html/config - ./apps:/var/www/html/custom_apps depends_on: - db ports: - "8080:80"
调整卷的本地路径以适应系统,环境变量在env-files中定义,可在运行时供两个容器使用。
在docker-compose.yml所在路径执行以下命令启动栈:
console$ docker-compose up -d
停止栈同样简单:
console$ docker-compose down
许多用户需要Nextcloud的额外功能。若镜像未包含所需包,可基于此镜像构建自己的镜像。以FROM语句开始派生镜像,添加所需内容:
yamlFROM migoller/nextcloud RUN ...
https://github.com/nextcloud/docker/blob/master/.examples%E6%8F%90%E4%BE%9B%E4%BA%86%E6%B7%BB%E5%8A%A0%E5%AE%9A%E6%97%B6%E4%BB%BB%E5%8A%A1%E3%80%81smb%E6%94%AF%E6%8C%81%E6%88%96imap%E8%AE%A4%E8%AF%81%E7%AD%89%E5%8A%9F%E8%83%BD%E7%9A%84%E7%A4%BA%E4%BE%8B%E3%80%82%E6%9B%B4%E5%A4%9A%E8%AF%A6%E6%83%85%E8%A7%81https://github.com/nextcloud/docker/blob/master/.examples/dockerfiles/full/apache/Dockerfile%E3%80%82
Nextcloud镜像支持通过环境变量自动配置,可预配置首次运行安装页面的所有选项。启用自动配置需通过以下环境变量设置数据库连接,仅使用一种数据库类型!
官方Nextcloud Docker镜像的环境变量列表见https://github.com/nextcloud/docker#auto-configuration-via-environment-variables%E3%80%82
NEXTCLOUD_ADMIN_USER:设置Nextcloud管理员账户用户名NEXTCLOUD_ADMIN_PASSWORD:设置Nextcloud管理员账户的复杂密码MYSQL_USER:设置运行时访问数据库的MySQL用户名MYSQL_PASSWORD:设置MYSQL_USER账户的复杂密码MYSQL_HOST:设置远程MySQL服务器的主机名MYSQL_DATABASE:设置Nextcloud数据库名称MYSQL_ROOT_USER:设置MySQL服务器root用户账户名(通常为"root")MYSQL_ROOT_PASSWORD:设置MySQL的密码未来此自定义镜像将支持通过环境变量配置:
根据您的设置,有多种加密实现方式。推荐在Nextcloud前使用反向代理,如流行的https://github.com/jwilder/nginx-proxy%E5%92%8Chttps://github.com/JrCs/docker-letsencrypt-nginx-proxy-companion%E5%AE%B9%E5%99%A8%EF%BC%8C%E4%BD%BF%E7%94%A8%E5%89%8D%E8%AF%B7%E6%9F%A5%E9%98%85%E7%9B%B8%E5%85%B3%E6%96%87%E6%A1%A3%E3%80%82
以下是 migoller/nextcloud 相关的常用 Docker 镜像,适用于 不同场景 等不同场景:
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务