if you ask three people you will get 10K different recommendations. the only reliable documentation is the official documentation and the only good how-to is the one that you understand. its certainly not a good idea to follow some how-to blindly, not understanding the steps taken.
I would recommend to use containers. I use LXC so you can argue that I have setup Nextcloud in Ubuntu 24.04 LTS, however my database runs in another LXC under Ubuntu 22.04 LTS as that is best supported by the PostGresSQL that I am using. And for Collabora, I use the Nextcloud standalone App for my home setup, and yet another LXC container for the non-profit organization I runs the other one for.
So it can be done, sure, however if you would like to fiddle with this yourself, I recommend LXC so “starting over” with a subset of the installation is easy, as well as snapshotting before you do any new config/changes.
Before suggesting any installation steps it is important to clarify some basics. Without these details, any advice will be incomplete or even misleading.
what hardware or infrastructure will you use (home PC, dedicated server, VPS, NAS)? What are the specs (CPU, RAM, disk)?
will Nextcloud be used only inside your LAN or also exposed to the internet? Do you have a public IP from your provider (static or dynamic)? Do you have a domain name?
you already mentioned that you want to run Collabora Online and Talk – this is important since they increase resource and network requirements.
how many users will use the instance – just a few people or dozens/hundreds?
will you need to handle very large files (10 GB or more)? This changes filesystem choice, PHP/DB/reverse proxy settings and requires tuning for stability.
what is your experience level with Linux server administration and web services? If you are a beginner, Nextcloud AIO (Docker) or SNAP is usually the easiest path.
Once these basics are clear it will be possible to point you to the right installation method and the adjustments needed for Ubuntu 24.04.
I have a dedicated server, running Proxmox, where I created a VM, with 32GB of RAM, 5TB of space, using an Intel Xeon processor.
I plan to create something similar to Google Drive to provide these services to clients. I can increase RAM, CPU, and disk capacity.
Yes, I do have knowledge of Linux administration, but I haven’t had time to study Docker yet. In this case, I prefer manual installation rather than using Docker.
Since I don’t have any Docker knowledge, if something goes wrong, I won’t know how to fix it. This is different from a manual installation.
The problem is that I didn’t find any documentation that helps with the installation and configuration of Collabora and High Performance Backend.
Nextcloud does not have any information regarding the installation and configuration of Collabora and High Performance Backend, from what I have checked, the documentation for this configuration is only in Nextcloud Enterprise.
Do you know of any documentation that can really help with this installation and configuration?
" Collabora CODE (Collabora Office Development Edition) is the development version of Collabora Online. It is perfect for testing, home use or small teams but not recommended for production environments."
I understand your concern about Docker, but honestly – manual installation is actually the most complicated way, especially if you want Nextcloud together with Collabora Online and Talk HPB. Most of today’s guides and documentation already assume the use of Docker.
I run a very similar setup to yours – Proxmox, a VM with Ubuntu, and on top of that Nextcloud AIO. I’m not an IT professional either, just an enthusiast, and I was afraid of Docker at first too. In the end I realized it’s much simpler than it looks.
installing Docker support on the server is literally one command,
adding your user to the docker group is a second command,
running Nextcloud AIO is just one more command.
No complicated configuration, no manual setup of Collabora or HPB – everything is already included in the AIO container. I’ve already shared the docker-compose.yml file several times here on the forum, so you can rely on that if needed.
If you have a public IP address, it’s even easier. With NGINX Proxy Manager you can handle SSL certificates and their management without any hassle.
With the hardware you have, it would be a pity not to use its potential.
Alongside Nextcloud I run other services in Docker as well:
Bitwarden (password manager)
Plex and Jellyfin (media)
WordPress and Hugo (websites)
Paperless (document management)
qBittorrent + VPN
Stirling (PDF editing app)
Rustdesk server
many more…
All of them are dockerized solutions, because they are extremely easy to install and maintain. I also suggest looking into Portainer, which is a great tool for managing Docker containers.
I’m convinced it won’t take you more than two hours to get the basics of Docker. And once you understand how good this solution is, you’ll suddenly see how many other opportunities open up.
As it is said in the movie Matrix: “I can only show you the door. You’re the one that has to walk through it.”
Nextcloud also has several plugins/features that can be installed through Nextcloud’s own application manager, and what would these installations look like from the Nextcloud panel, using Docker?
For example, install ClamAV, PDF reader, ransomware protection, or any other app installed via Nextcloud.
Change the “data” directory or any other setting that could be done manually, in the config file. What would this configuration look like?
From the little I’ve read about Docker, I know that many of the configurations made manually usually require restarting Docker for it to save these changes or I would have to stop Docker, make the changes, then activate them again.
There are three different categories to keep in mind:
1. Internal Nextcloud apps
Installed from the App Store inside the NC web UI (PDF viewer, Ransomware protection, Calendar, Notes, Antivirus connector). They persist in AIO and don’t need Docker restarts.
2. External services that Nextcloud integrates with
Collabora server, Talk HPB, ClamAV daemon. These run as their own containers and you just point NC to them in the settings.
3. Completely independent services
Things like Bitwarden, Jellyfin, Paperless, Plex, qBittorrent+VPN, WordPress, Hugo, Stirling…
These have nothing to do with NC itself – they just run side-by-side in Docker because it makes deployment and management simple.
Tools like Portainer make handling multiple containers very easy.
It might feel complicated right now, but don’t let that discourage you. Not long ago I was in exactly the same position, and now I can honestly say that self-hosting is the best thing that could have happened to me.
Once you get the basics of Docker, you’ll see how simple it actually is – and how many new possibilities open up once you understand it.
I totally disagree with these timeframes. Is that AI written?
Nextcloud is just LAMP. That is mostly it.
IMHO the Nextcloud manual is needlessly complicated, but if you follow my tutorial that basically just guides you through a LAMP installation, you need at the very, very worst case scenario 8h to follow this.
And for update and maintenance, we are looking at the very, very worst running this command once a month for 15min:
and maybe you have to troubleshoot something like a release upgrade once a year for 8h.
The possible biggest hurdles like network requirements or setting up a Linux host, or making sure you have a working offsite backup, all also apply to Docker.
If something goes terribly wrong, every month, which is very unlikely.
Sorry, but I’m sure there are ways to highlight the advantages of Docker without massively exaggerating. And by the way, if you want to keep it to half an hour a month, it’s probably worth getting at least some knowledge of Linux and the “black magic” happening inside those containers.
Using Docker, everything configured, let’s say I did a Kernel update, where I need to restart the server.
When restarting the server, will Docker automatically upload all the configurations and containers that were created and configured or will I have to start them all manually?
When you set up containers (for example with Docker Compose or AIO), they are created with a restart policy (restart: unless-stopped or similar). This means that after a server reboot (e.g. after a kernel update), Docker will automatically start them again with all the volumes, configs and data preserved.
You don’t need to reconfigure or reinstall anything. At most, you just make sure the Docker service itself is enabled on your system (which it is by default on Ubuntu).
So the short answer: after a reboot, your Nextcloud AIO and other containers come back up on their own.
Just taking your question at face value I agree with what many other says: look into the official documentation.
One remark however: on my personal account, I prefer nginx over Apache and if the same applies to you: don’t worry - it works although it’s for some reason not “supported”
Bottomline: before going too deep into the jungle I recommend you decide on apache vs nginx