Nextcloud VPS
Nextcloud's All-in-One installer in Docker, with its setup page kept private until you open it through an SSH tunnel. You give it your domain and it starts Nextcloud with HTTPS, backups and updates built in.
Who it suits
Replacing Dropbox or Google Drive, and sharing calendars and contacts, for a household or small team. AIO needs a domain of its own and wants the server to itself. To sync files between your own devices only, Syncthing is lighter; for a shared drive with no upkeep, a hosted service is easier.
Which plan
Standard (2 vCPU, 4 GB) is the smallest plan we offer it on: Nextcloud, its database, Redis and AIO's helpers run at once, and each PHP worker may use up to 512 MB. Choose Extreme for several active users, Office editing or Talk calls. Disk is the other limit: 80 GB on Standard and 160 GB on Extreme, for everything you sync.
What we install
Nextcloud All-in-One (AIO) is the install method Nextcloud recommends: one mastercontainer that sets up and updates Nextcloud, its database, Redis, HTTPS and optional apps such as Talk and Office. We run it as its README says, except that its setup page listens on 127.0.0.1:8080 instead of every address. Your files live in Docker volumes that AIO manages.
- docker-ce
- docker-ce-cli
- containerd.io
- docker-buildx-plugin
- docker-compose-plugin
- docker-ce
- docker-ce-cli
- containerd.io
- docker-buildx-plugin
- docker-compose-plugin
From order to ready
- Server ready. We email you when the server is running, and you can log in with SSH. The installer starts on that same first boot.
- Installer running. It logs to
/var/log/vps9-setup.log;tail -fit to watch. - Application ready.
/var/lib/vps9-setup.exitappears when the installer has finished, holding 0 if it worked. AIO is ready whendocker pslists nextcloud-aio-mastercontainer and its setup page answers on https://127.0.0.1:8080 on the server. Nextcloud itself starts once you've given AIO your domain.
What you still do
- Point a domain such as cloud.example.com at the server and allow 443 in the panel firewall (and 3478 TCP and UDP if you'll use Talk).
- From your computer, run
ssh -L 8080:127.0.0.1:8080 root@<your IPv4>, openhttps://localhost:8080, accept the self-signed certificate warning, copy the passphrase it shows and log in. - Enter your domain, choose the optional apps and start the containers. When AIO is done it shows Nextcloud's initial admin password: save it, log in at your domain and turn on two-factor login.
- In AIO, set a backup location and turn on daily backups.
Exposure and security
AIO's setup page shows its login passphrase to whoever opens it first, so it listens on 127.0.0.1:8080 and you reach it through an SSH tunnel; we don't publish AIO's ports 80 and 8443 at all. When you start Nextcloud, AIO publishes port 443 with its own Let's Encrypt certificate, and 3478 (TCP and UDP) if you turn on Talk. The mastercontainer controls Docker through its socket, as AIO requires, which is as powerful as root: keep its passphrase safe.
Backups and upgrades
AIO updates Nextcloud and its containers when you press its update button, or every night if you turn on daily backups with automatic updates. Its backups use BorgBackup to a directory you choose; copy that off the server. We turn on the operating system's automatic security updates (security fixes only); the server never reboots by itself. We run the hardware, the network and the first-boot install; after that, Nextcloud is yours to run, and we don't manage, update or back it up for you.
Nextcloud questions
Why All-in-One and not a manual install?
It's the method Nextcloud itself recommends: one container that installs Nextcloud, its database, Redis and HTTPS, and keeps them updated and backed up. Nextcloud's other Docker image is maintained by community volunteers for expert use. AIO's trade-off is that it wants the server to itself.
Do I need a domain?
Yes. AIO only starts Nextcloud for a domain that points at the server, because it gets a Let's Encrypt certificate for it. A subdomain such as cloud.example.com works. AIO can't move Nextcloud to another domain from its interface later, so pick one you'll keep.
How much space do I get for files?
The plan's NVMe disk, less the system and the containers: 40, 80 or 160 GB in total. Nextcloud can also mount external storage (S3-compatible, SFTP, WebDAV) through its External storage app, which is how people grow past the disk.
Are my files encrypted?
In transit, yes: everything goes over HTTPS. At rest, Nextcloud's server-side encryption is off by default and has costs (larger files, harder recovery). For files only you should ever read, a client-side tool such as Cryptomator on top of Nextcloud keeps them encrypted before they leave your device.
Order it from your terminal
$ vps9 servers create --plan standard --image ubuntu-24.04 --app nextcloud --hostname web-1 --key key_8f2c{
"plan": "standard",
"image": "ubuntu-24.04",
"hostname": "web-1",
"app": "nextcloud"
}