⚠️⚠️⚠️ 此镜像由社区志愿者维护,专为专家级使用设计。如需快速部署并支持完整Nextcloud Hub功能,请使用Nextcloud GmbH维护的Nextcloud All-in-One容器。
维护者:
Nextcloud社区
获取帮助:
Docker社区Slack、Server Fault、Unix & Linux或Stack Overflow
30.0.16-apache, 30.0-apache, 30-apache, 30.0.16, 30.0, 3030.0.16-fpm, 30.0-fpm, 30-fpm30.0.16-fpm-alpine, 30.0-fpm-alpine, 30-fpm-alpine31.0.9-apache, 31.0-apache, 31-apache, stable-apache, production-apache, 31.0.9, 31.0, 31, stable, production31.0.9-fpm, 31.0-fpm, 31-fpm, stable-fpm, production-fpm31.0.9-fpm-alpine, 31.0-fpm-alpine, 31-fpm-alpine, stable-fpm-alpine, production-fpm-alpine32.0.0-apache, 32.0-apache, 32-apache, apache, 32.0.0, 32.0, 32, latest32.0.0-fpm, 32.0-fpm, 32-fpm, fpm32.0.0-fpm-alpine, 32.0-fpm-alpine, 32-fpm-alpine, fpm-alpineNextcloud是一个安全的数据存储与共享平台,支持从任何设备访问和管理文件、日历、联系人、邮件等数据。本Docker镜像为社区维护的微服务版本,适用于专家级部署,提供灵活的配置选项,但Nextcloud GmbH不提供支持。该镜像针对s390x架构构建,是Nextcloud镜像的特定架构版本。
apache(含Web服务器)和fpm(FastCGI进程)两种镜像版本,满足不同部署需求。pre-installation、post-upgrade等钩子文件夹,支持部署前后自定义脚本执行。适用于需要自定义微服务架构的专家用户,用于构建安全可控的数据管理平台。不推荐新手使用,建议需要完整功能支持和简易部署的用户选择Nextcloud***All-in-One容器。
包含完整Nextcloud及Apache Web服务器,暴露80端口,适合快速启动:
console$ docker run -d -p 8080:80 s390x/nextcloud
访问http://localhost:8080即可进入Nextcloud初始化页面。
基于php-fpm,需配合外部Web服务器(如Nginx)反向代理至9000端口:
console$ docker run -d s390x/nextcloud:fpm
注意:fpm镜像无法直接提供静态文件服务,需Web服务器通过卷挂载访问/var/www/html目录。
Nextcloud数据默认存储于/var/www/html***卷,建议使用命名卷或主机目录挂载以确保数据持久化:
console$ docker run -d \ -v nextcloud:/var/www/html \ s390x/nextcloud
console$ docker run -d \ -v db:/var/lib/mysql \ mariadb:10.6
支持挂载细分目录以实现精细化管理:
console$ docker run -d \ -v nextcloud:/var/www/html \ # 主目录(升级必需) -v apps:/var/www/html/custom_apps \ # 自定义应用 -v config:/var/www/html/config \ # 配置文件 -v data:/var/www/html/data \ # 用户数据 -v theme:/var/www/html/themes/mytheme \ # 自定义主题 s390x/nextcloud
默认使用SQLite,推荐通过环境变量或初始化向导配置外部数据库:
console$ docker run -d \ -e MYSQL_DATABASE=nextcloud \ -e MYSQL_USER=nextcloud \ -e MYSQL_PASSWORD=dbpass \ -e MYSQL_HOST=db \ --link db:db \ s390x/nextcloud
SQLITE_DATABASE(数据库名)MYSQL_DATABASE、MYSQL_USER、MYSQL_PASSWORD、MYSQL_HOSTPOSTGRES_DB、POSTGRES_USER、POSTGRES_PASSWORD、POSTGRES_HOST通过容器执行occ命令管理Nextcloud(需指定www-data用户):
console$ docker exec --user www-data CONTAINER_ID php occ
示例:列出用户
console$ docker exec --user www-data CONTAINER_ID php occ user:list
预配置管理员账户(需同时设置):
console$ docker run -d \ -e NEXTCLOUD_ADMIN_USER=admin \ -e NEXTCLOUD_ADMIN_PASSWORD=adminpass \ s390x/nextcloud
自定义数据存储路径:
console$ docker run -d \ -e NEXTCLOUD_DATA_DIR=/var/www/html/mydata \ -v data:/var/www/html/mydata \ s390x/nextcloud
设置允许访问的域名列表:
console$ docker run -d \ -e NEXTCLOUD_TRUSTED_DOMAINS="example.com localhost 192.168.1.1" \ s390x/nextcloud
启用Redis以解决文件锁定问题:
console$ docker run -d \ -e REDIS_HOST=redis \ -e REDIS_HOST_PASSWORD=redispass \ --link redis:redis \ s390x/nextcloud
配置外部SMTP服务器发送邮件:
console$ docker run -d \ -e SMTP_HOST=smtp.example.com \ -e SMTP_SECURE=tls \ -e SMTP_PORT=587 \ -e SMTP_NAME=*** \ -e SMTP_PASSWORD=smtppass \ -e MAIL_FROM_ADDRESS=user \ -e MAIL_DOMAIN=example.com \ s390x/nextcloud
通过挂载钩子目录执行自定义脚本,支持以下钩子:
pre-installation:安装前post-installation:安装后pre-upgrade:升级前post-upgrade:升级后before-starting:启动前示例:挂载主机脚本目录至钩子文件夹
yamlservices: app: image: s390x/nextcloud:stable volumes: - ./hooks/pre-installation:/docker-entrypoint-hooks.d/pre-installation - ./hooks/post-upgrade:/docker-entrypoint-hooks.d/post-upgrade
要求:脚本需位于钩子目录根级,以.sh结尾且可执行。
通过环境变量配置反向代理信任及协议覆盖:
console$ docker run -d \ -e APACHE_DISABLE_REWRITE_IP=1 \ -e TRUSTED_PROXIES="192.168.1.0/24 172.17.0.1" \ s390x/nextcloud
console$ docker run -d \ -e OVERWRITEHOST=cloud.example.com:443 \ -e OVERWRITEPROTOCOL=https \ s390x/nextcloud
yamlvolumes: nextcloud: db: services: db: image: mariadb:10.6 restart: always command: --transaction-isolation=READ-COMMITTED --log-bin=binlog --binlog-format=ROW volumes: - db:/var/lib/mysql environment: - MYSQL_ROOT_PASSWORD=rootpass # 替换为安全密码 - MYSQL_PASSWORD=dbpass # 替换为安全密码 - MYSQL_DATABASE=nextcloud - MYSQL_USER=nextcloud app: image: s390x/nextcloud restart: always ports: - 8080:80 links: - db volumes: - nextcloud:/var/www/html environment: - MYSQL_PASSWORD=dbpass - MYSQL_DATABASE=nextcloud - MYSQL_USER=nextcloud - MYSQL_HOST=db
启动服务:
console$ docker compose up -d
访问http://localhost:8080完成初始化。
来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429