How do I self-host Nextcloud on a VPS?
To self-host Nextcloud, prepare a supported Linux guest, deploy the application and database, configure TLS and schedule tested backups. The Standard plan (3 vCPU, 4 GB RAM, 90 GB NVMe) is a starting configuration at $25.36 for 3 months in Amsterdam; size it for your users, apps and stored data.
Nextcloud replaces Dropbox, Google Drive and a good deal of Google Workspace with software you run yourself, so your files live on a server you rent directly rather than in someone else's cloud. This guide outlines a Docker Compose deployment; use the current Nextcloud documentation for version-specific requirements.
Prerequisites: a KVM VPS (the Standard plan is a good starting point; add storage if you will hold large media libraries), root access, and a domain name pointed at the server's IP for TLS. For large libraries, compare storage capacity and disk performance before choosing a compute or storage plan.
NimbusVPS checkout asks for an email address, with no ID upload or phone verification. Email and order records are retained. Payments are verified automatically; server preparation follows confirmation. Prices shown are for one server in Amsterdam, free Linux and no paid add-ons, with the three-month minimum term prepaid. Location, operating system and options change the total.
- 1
Deploy the server
Order a Standard-sized KVM VPS with Debian 12 or Ubuntu 24.04 and SSH in as root. Point an A record for your domain at the server IPv4 so certificates can be issued later.
- 2
Install Docker and Compose
Install Docker Engine and the compose plugin from the official Docker apt repository, then verify with docker run --rm hello-world. Check the selected Linux release and kernel against the Docker requirements.
- 3
Create the compose stack
In a directory such as /opt/nextcloud, write a docker-compose.yml with three services: the Nextcloud app image, a PostgreSQL (or MariaDB) database, and a reverse proxy such as Caddy that will obtain TLS automatically for your domain.
- 4
Set environment and volumes
Put database credentials and the trusted domain in an .env file, and map named volumes for the database and for Nextcloud data so your files survive a container rebuild. Keep the .env readable only by root.
- 5
Bring the stack up
Run docker compose up -d, then watch docker compose logs -f until Nextcloud reports it is installed and the proxy has issued a certificate for your domain.
- 6
Complete setup and harden
Open the domain in a browser, create the admin account, then enable server-side encryption if desired, set up the background cron job, and schedule off-site backups of the data and database volumes to a second jurisdiction.
Storage growth: Nextcloud data grows with use; when it outgrows a compute plan, move the data volume onto a Storage VPS reaching up to 16 TB rather than over-buying CPU. Backups: paid backup options appear in the configurator. Confirm the storage location, schedule and restore procedure for your service, and keep a tested independent backup of both data and database.
Frequently asked questions
What are the VPS requirements for Nextcloud?
Resource needs depend on user count, apps, database workload and file volume. The Standard plan offers 3 vCPU, 4 GB RAM and 90 GB NVMe at $25.36 for 3 months in Amsterdam. Treat that as a starting configuration, then check the current Nextcloud requirements and monitor actual usage.
Can I run Nextcloud in Docker on a VPS?
A supported Linux guest on a KVM VPS can run Docker and Compose. Choose a supported Nextcloud image, configure persistent database and data volumes, and follow the current upstream deployment requirements.
Is self-hosting Nextcloud private?
Self-hosting gives you control over Nextcloud accounts, application settings and backups. NimbusVPS checkout omits an ID upload but retains your email, configuration and payment records. Protect the service with TLS, strong credentials, updates and encrypted backups; self-hosting does not create a zero-log or untraceability guarantee.
More guides
Pay with crypto without an ID upload at checkout. Payments are verified automatically; server preparation follows confirmation.
Choose your server and see the total.
Choose your location, resources and term. Pay in crypto after reviewing the total; payment is verified automatically before your VPS is prepared.
Minimum 3-month VPS term ยท No ID upload in checkout ยท 7-day refund policy with exclusions