Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the ninja-forms domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/html/wp-includes/functions.php on line 6114

Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the simple-custom-post-order domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/html/wp-includes/functions.php on line 6114

Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the wp-mail-logging domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/html/wp-includes/functions.php on line 6114

Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the health-check domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/html/wp-includes/functions.php on line 6114

Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the updraftplus domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/html/wp-includes/functions.php on line 6114

Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the rocket domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/html/wp-includes/functions.php on line 6114
Your Guide to the Nextcloud All-in-One on Windows 10 & 11! - Nextcloud

Your Guide to the Nextcloud All-in-One on Windows 10 & 11!

Setting up a Nextcloud All-in-One or AIO is a simple, effective way to achieve a full-blown Nextcloud installation with many features working out-of-the-box. It provides you easy deployment and maintenance of these features while allowing you to keep your data under your control.

In this blog, you will find the instructions for setting up an All-in-One on Windows 10 and 11. It is compatible with a PC with a x64 CPU with at least 8GB of RAM and 4 cores.

Nextcloud AIO setup

Before you start 🚨

First, you will need to get a public domain and be able to open ports for the guide to work. Also, make sure that you are not behind CGNAT as it will not work with that.

Please also keep in mind that the following instructions are meant for installations without a web server or reverse proxy (like Apache, Nginx and else) already being in place. If you want to run AIO behind a web server or reverse proxy (like Apache, Nginx and else), see the reverse proxy documentation.

With that, let’s get started!

Install Docker Desktop 🐳

  1. Download docker for Windows: https://docs.docker.com/desktop/install/windows-install/.
Nextcloud Docker Desktop on Windows Installation

2. Execute the ‘.exe’ and install it.

Docker Desktop installation process

3. Click on ‘OK’ to continue (WSL2 is recommended).

Docker Desktop installation process

4. Wait until you see this screen: and click on ‘Close and restart’ in order to restart the PC.

Docker Desktop installation process

5. Open ‘Docker Desktop,’ then read through and accept the Terms:

Docker Desktop service agreement

6. You should see this popup now and follow the link of the popup (https://aka.ms/wsl2kernel).

Docker Desktop installation process

7. Click on the first link there (WSL2 Linux kernel update package for x64 machines).

Download Linux kernel

8. Download the wsl_update msi and install it.

Linux update setup
Linux update setup

9. Now click on ‘Restart’ in order to restart Docker desktop.

WSL installation incomplete

10. Next you should see this popup after a while and click on ‘Skip tutorial’ in order to skip it:

Docker Desktop installation

11. Finally, Docker Desktop is ready and you should see this:

Run a sample container

12. You should make sure that docker Desktop starts automatically when you log in by ticking the first value in the settings:

Docker Desktop installation process

Install AIO

After you’ve successfully completed installing the Docker Desktop, you can move on to installing your AIO.

1. Now open the command prompt:

command prompt

2. Start AIO with this command:

docker run ^
--sig-proxy=false ^
--name nextcloud-aio-mastercontainer ^
--restart always ^
--publish 80:80 ^
--publish 8080:8080 ^
--publish 8443:8443 ^
--volume nextcloud_aio_mastercontainer:/mnt/docker-aio-config ^
--volume //var/run/docker.sock:/var/run/docker.sock:ro ^
-e NEXTCLOUD_DATADIR="/run/desktop/mnt/host/c/ncdata" ^
nextcloud/all-in-one:latest

Make sure to adjust /run/desktop/mnt/host/c/ncdata to your needings. This path is equivalent to C:\ncdata on your Windows host so you need to translate the path accordingly. Hint: the path that you enter needs to start with /run/desktop/mnt/host/. Append to that the exact location on your windows host, e.g. c/ncdata which is equivalent to C:\ncdata.

3. Then you can open the AIO interface at https://localhost:8080. You need to accept the Self-Signed certificate, afterwards you should see this:

Nextcloud AIO setup

4. Click on Open Nextcloud AIO login and paste in your password:

Nextcloud AIO login

5. Now you should finally see the AIO dashboard:

Nextcloud AIO setup

6. Next, type in your public domain that you set up before starting this guide. The interface should help you figure out the exact steps. (Set up DDNS for your domain to point to your public IP, port-forward at least ports 443/tcp and 3478/udp and 3478/tcp to your Windows machine.)

7. After you’ve set it up correctly, it should allow you to pass to the next step where you can configure wanted optional addons and the timezone and click on Start containers in order to download and start them.

Nextcloud AIO setup

8. Now you should see a spinner that will take a while (depending on your internet speed around 10min or more):

Nextcloud AIO setup loading

9. When all containers are downloaded and started, you will see this screen which shows the containers still starting which will do the first install for you:

Nextcloud AIO setup

10. When everything is done, you should see this screen:

Nextcloud AIO setup

11. You can now open your new Nextcloud instance and log in with the given admin credentials.

12. You should also open the Backup and restore section type in a path like e.g. /run/desktop/mnt/host/c/backup and submit it. This path is equivalent to C:\backup on your Windows host so you need to translate the path accordingly. Hint: the path that you enter needs to start with /run/desktop/mnt/host/. Append to that the exact location on your windows host, e.g. c/backup which is equivalent to C:\backup.

That’s it! Now everything is set up and ready for production. ✨

Keep your data yours, through your new AIO!

For more information about Nextcloud AIO, check out the Github page.


This AIO manual and guide was created by team member Simon.

This site is registered on wpml.org as a development site. Switch to a production site key to remove this banner.