# nextcloud/docker

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/nextcloud-docker).**

7,305 stars · 1,919 forks · Shell · AGPL-3.0

## Links

- GitHub: https://github.com/nextcloud/docker
- Homepage: https://hub.docker.com/_/nextcloud/
- awesome-repositories: https://awesome-repositories.com/repository/nextcloud-docker.md

## Topics

`docker` `docker-image` `nextcloud` `open-source`

## Description

This project provides containerized images for deploying a self-managed content collaboration and file sharing server. It enables the creation of private cloud storage and self-hosted file synchronization environments, allowing users to maintain data ownership and control over their infrastructure.

The deployment model utilizes Docker images to simplify installation, scaling, and version updates. It distinguishes itself through a database-agnostic storage approach, supporting integration with PostgreSQL, MySQL, MariaDB, or SQLite, and employs volume mapping to ensure data persistence across container restarts.

The system covers a broad range of capabilities including identity and access management with OpenID Connect and two-factor authentication, remote file synchronization via WebDAV, and automated background processing. It also includes administrative tools such as a command-line interface and a content workflow engine for defining data processing rules.

Initial setup is handled through automated installation using environment variables for database connections and administrative credentials.

## Tags

### Business & Productivity Software

- [File and Folder Sharing](https://awesome-repositories.com/f/business-productivity-software/file-and-folder-sharing.md) — Provides self-managed file and folder sharing with granular access control and compliance management. ([source](https://docs.nextcloud.com/server/12/user_manual/))
- [Collaboration Platforms](https://awesome-repositories.com/f/business-productivity-software/collaboration-platforms.md) — Provides a comprehensive collaboration suite delivered via Docker images for simplified deployment and updates.
- [Self-Hosted File Sync and Share Platforms](https://awesome-repositories.com/f/business-productivity-software/self-hosted-file-sync-and-share-platforms.md) — Provides a central server for synchronizing files across multiple devices and managing shared folder access.
- [Collaborative Content Platforms](https://awesome-repositories.com/f/business-productivity-software/self-hosted-file-sync-and-share-platforms/collaborative-content-platforms.md) — Provides a containerized environment for synchronized document editing and file management with full administrative control.
- [Workflow Automation Engines](https://awesome-repositories.com/f/business-productivity-software/workflow-automation-engines.md) — Ships a flow engine for executing automated operational actions based on data-driven events and triggers. ([source](https://docs.nextcloud.com/server/19/developer_manual/))

### Data & Databases

- [Private Cloud Storage](https://awesome-repositories.com/f/data-databases/private-cloud-storage.md) — Implements a self-hosted platform for managing and storing digital assets on private hardware.
- [Database Backend Integration](https://awesome-repositories.com/f/data-databases/external-storage-integrations/database-backend-integration.md) — Supports connecting to external database servers including PostgreSQL, MySQL, MariaDB, or SQLite. ([source](https://cdn.jsdelivr.net/gh/nextcloud/docker@master/README.md))
- [File Storage and Metadata Management](https://awesome-repositories.com/f/data-databases/file-storage-and-metadata-management.md) — Implements a system for storing and retrieving descriptive file metadata to enable advanced search and organization. ([source](https://docs.nextcloud.com/server/30/developer_manual/))
- [Persistence Layers](https://awesome-repositories.com/f/data-databases/persistence-layers.md) — Provides a storage and database abstraction layer to manage how application data is persisted and retrieved. ([source](https://docs.nextcloud.com/server/28/developer_manual/))
- [Docker Volume Persistence](https://awesome-repositories.com/f/data-databases/persistent-storage-volumes/docker-volume-persistence.md) — Ensures data persistence across container restarts by mapping internal application directories to external Docker volumes.
- [Multi-Database Support](https://awesome-repositories.com/f/data-databases/sqlite-drivers/sqlite-storage-adapters/sqlite-or-postgresql-storage/multi-database-support.md) — Supports multiple database backends including PostgreSQL, MySQL, MariaDB, and SQLite for data persistence.

### DevOps & Infrastructure

- [Container Image Packaging](https://awesome-repositories.com/f/devops-infrastructure/container-image-packaging.md) — Packages the entire collaboration server into Docker images for simplified deployment, scaling, and updates.
- [Containerized Deployment Strategies](https://awesome-repositories.com/f/devops-infrastructure/containerized-deployment-strategies.md) — Uses containerized images for simplified hosting, scaling, and environment consistency. ([source](https://cdn.jsdelivr.net/gh/nextcloud/docker@master/README.md))
- [Remote Server Synchronization](https://awesome-repositories.com/f/devops-infrastructure/remote-server-synchronization.md) — Enables client-server synchronization to keep local directories consistent with the remote server state. ([source](https://docs.nextcloud.com/server/12/user_manual/))
- [Self-Hosted Collaboration Servers](https://awesome-repositories.com/f/devops-infrastructure/self-hosted-collaboration-servers.md) — Ships a self-managed server runtime for document sharing and team collaboration via Docker.
- [Caching Layers](https://awesome-repositories.com/f/devops-infrastructure/caching-layers.md) — Implements a caching system to reduce database load and improve response times for frequently accessed data. ([source](https://docs.nextcloud.com/server/33/developer_manual/))
- [Platform Version Upgrades](https://awesome-repositories.com/f/devops-infrastructure/platform-version-upgrades.md) — Implements an automated update process using new image pulls and migration scripts to upgrade the platform. ([source](https://cdn.jsdelivr.net/gh/nextcloud/docker@master/README.md))

### Networking & Communication

- [WebDAV Implementations](https://awesome-repositories.com/f/networking-communication/multi-protocol-file-servers/webdav-implementations.md) — Implements the WebDAV protocol to enable remote file management and synchronization across devices. ([source](https://docs.nextcloud.com/server/12/developer_manual/))
- [Collaboration APIs](https://awesome-repositories.com/f/networking-communication/collaboration-apis.md) — Offers a standardized OCS API for automating administrative and user-level collaboration operations. ([source](https://docs.nextcloud.com/server/14/developer_manual/))
- [Middleware-Based Request Pipelines](https://awesome-repositories.com/f/networking-communication/communication-protocols-architectures/request-processing-architectures/request-processing/middleware-based-request-pipelines.md) — Employs a modular middleware pipeline to intercept and modify network requests for routing and authentication. ([source](https://docs.nextcloud.com/server/latest/developer_manual/))

### Security & Cryptography

- [Identity and Access Management](https://awesome-repositories.com/f/security-cryptography/identity-access-management.md) — Includes a system for managing user identities, roles, and two-factor authentication for private cloud installations.
- [Role-Based Access Control](https://awesome-repositories.com/f/security-cryptography/role-based-access-control.md) — Provides a centralized system for managing user identities and controlling data access via defined roles. ([source](https://docs.nextcloud.com/server/stable/developer_manual/))
- [User Identity Management](https://awesome-repositories.com/f/security-cryptography/user-identity-management.md) — Provides a unified identity system for managing user profiles, authentication flows, and access permissions. ([source](https://docs.nextcloud.com/server/21/developer_manual/))
- [OpenID Connect Support](https://awesome-repositories.com/f/security-cryptography/openid-connect-support.md) — Integrates with external identity providers using the OpenID Connect protocol for unified user authentication. ([source](https://docs.nextcloud.com/server/32/developer_manual/))
- [Secrets and Credential Management](https://awesome-repositories.com/f/security-cryptography/security/cryptography-and-secrets/secrets-credential-management.md) — Securely loads passwords and usernames from secret files instead of using plain-text environment variables. ([source](https://cdn.jsdelivr.net/gh/nextcloud/docker@master/README.md))
- [Two-Factor Authentication](https://awesome-repositories.com/f/security-cryptography/two-factor-authentication.md) — Increases account security by requiring secondary identity verification during the login flow. ([source](https://docs.nextcloud.com/server/15/developer_manual/))

### Software Engineering & Architecture

- [Database Abstraction Layers](https://awesome-repositories.com/f/software-engineering-architecture/database-abstraction-layers.md) — Utilizes a database abstraction layer to support multiple SQL backends including PostgreSQL, MySQL, MariaDB, and SQLite.
- [Event-Driven Architectures](https://awesome-repositories.com/f/software-engineering-architecture/event-driven-architectures.md) — Employs an event-driven architecture to execute custom logic and modular extensions in response to platform actions.

### Development Tools & Productivity

- [CLI Administration Tools](https://awesome-repositories.com/f/development-tools-productivity/cli-administration-tools.md) — Includes a built-in command-line interface for executing administrative tasks and system commands. ([source](https://cdn.jsdelivr.net/gh/nextcloud/docker@master/README.md))
- [Cron Scheduling](https://awesome-repositories.com/f/development-tools-productivity/cron-scheduling.md) — Schedules recurring system maintenance and asynchronous background tasks using a system-level cron daemon.
- [Extension Frameworks](https://awesome-repositories.com/f/development-tools-productivity/extension-frameworks.md) — Provides a bootstrapping process and metadata system for creating modular extensions that integrate with core services. ([source](https://docs.nextcloud.com/server/22/developer_manual/))
- [REST APIs](https://awesome-repositories.com/f/development-tools-productivity/rest-apis.md) — Provides a comprehensive REST API framework for exposing system functionality through standardized HTTP endpoints. ([source](https://docs.nextcloud.com/server/24/developer_manual/))

### System Administration & Monitoring

- [Background Job Schedulers](https://awesome-repositories.com/f/system-administration-monitoring/background-job-schedulers.md) — Implements a background job scheduler for executing recurring system maintenance and asynchronous tasks. ([source](https://docs.nextcloud.com/server/15/developer_manual/))
- [Remote Data Synchronization](https://awesome-repositories.com/f/system-administration-monitoring/remote-data-synchronization.md) — Ensures local directories are consistently synchronized and backed up to a remote self-hosted server.

### Web Development

- [Account Management APIs](https://awesome-repositories.com/f/web-development/account-management-apis.md) — Exposes programmatic API endpoints for creating and managing user accounts and administrative tasks. ([source](https://docs.nextcloud.com/server/12/developer_manual/))
