Nextcloud All-in-One (AIO) Installatiehandleiding
Deze handleiding bevat de stappen en het Docker Compose-bestand om Nextcloud All-in-One (AIO) op te zetten.
De configuratie is volledig geoptimaliseerd voor een schone Ubuntu-omgeving met een bestaande reverse proxy:
* Er wordt gedraaid vanuit de home-directory (geen sudo-rechten nodig voor dagelijks beheer).
* Alle configuratiedata en gebruikersbestanden worden persistent opgeslagen binnen ./aio_mastercontainer en ./data.
* De Apache-poort is omgezet naar 11000 zodat poort 443 vrij blijft voor Nginx Proxy Manager.
* Watchtower is voor deze container uitgeschakeld via labels, omdat Nextcloud AIO zijn eigen updates volledig automatisch beheert via de ingebouwde interface.
1. Mappenstructuur Voorbereiden
Maak eerst de benodigde directory aan in je home-directory en navigeer erheen:
2. Docker Compose Bestand Aanmaken
Maak een nieuw bestand aan genaamd docker-compose.yml:
Plak de onderstaande volledige configuratie in het bestand. Nextcloud AIO vereist vooraf geen handmatige database-instellingen of openssl-sleutels; de mastercontainer richt dit later allemaal zelfstandig in.
services:
nextcloud-aio-mastercontainer:
image: nextcloud/all-in-one:latest
container_name: nextcloud-aio-mastercontainer
init: true
restart: unless-stopped
ports:
# De poort waarop je de eerste installatie, setup en upgrades uitvoert
- "8080:8080"
environment:
# STAP 1: Apache poort omzetten naar 11000 omdat poort 443 al bezet is door NPM
- APACHE_PORT=11000
# STAP 2: Slaat alle gebruikersbestanden veilig op in de huidige map binnen de home-directory
- NEXTCLOUD_DATADIR=/home/je inlog gebruikersnaam/docker/nextcloud/data
volumes:
# Verplicht: Geeft de mastercontainer toegang om de overige sub-containers aan te maken
- /var/run/docker.sock:/var/run/docker.sock:ro
# Slaat de configuratie van de mastercontainer persistent op in de huidige map
- ./aio_mastercontainer:/mnt/docker-aio-config
labels:
# We zetten Watchtower uit; Nextcloud AIO regelt zijn eigen container-updates!
- "com.centurylinklabs.watchtower.enable=false"
Sla het bestand op met Ctrl+O, druk op Enter, en sluit de editor met Ctrl+X.
3. Nextcloud AIO Starten
Start de mastercontainer op de achtergrond op:
4. Status Controleren
Controleer of de mastercontainer succesvol is opgestart en luistert op poort 8080:
5. Nginx Proxy Manager (NPM) Inrichten
Voordat je naar de webinterface gaat, moet je in NPM een Proxy Host aanmaken (bijvoorbeeld cloud.example.com) om het verkeer correct door te sturen:
- Voeg een nieuwe Proxy Host toe in NPM.
- Tabblad Details:
- Domain Names:
cloud.example.com - Scheme:
https(Let op: Nextcloud AIO vereist HTTPS richting de backend!) - Forward Hostname / IP: Het lokale IP-adres van je Ubuntu-VM
- Forward Port:
11000(Dit matcht met de APACHE_PORT) - Websockets Support: AAN
- Tabblad SSL:
- Vraag een nieuw Let's Encrypt certificaat aan, vink Force SSL en HTTP/2 Support aan en sla op.
6. InitiΓ«le Setup & Wachtwoord
- Open je browser en ga naar de beheerinterface van de mastercontainer via het IP-adres op poort
8080: (Je krijgt hier een HTTPS-waarschuwing omdat het certificaat zelfondertekend is; klik op 'Geavanceerd' en ga door). - Kopieer de Setup Password die groot op het scherm verschijnt en log in.
- Voer je domeinnaam in (
cloud.example.com) om de proxy-koppeling te valideren. - Selecteer de gewenste add-ons (zoals Office, Talk of Antivirus) en klik op Download and start containers.
Nextcloud AIO gaat nu op de achtergrond alle benodigde sub-containers (Nextcloud, Postgres, Redis, etc.) downloaden en starten. Zodra dit klaar is, kun je direct via https://cloud.example.com inloggen!