This commit is contained in:
2025-12-05 09:15:15 +01:00
commit 8837c20d66
1752 changed files with 1123339 additions and 0 deletions

View File

@@ -0,0 +1,92 @@
---
title: "Docker"
date: 2025-11-10
weight: 2
feedback: true
draft: false
---
Docker is een platform om applicaties geïsoleerd te draaien in containers. In deze handleiding installeren we Docker op een Debian server via de command line en controleren we of de installatie correct werkt.
{{< notice "info" "Informatie" >}}
Deze handleiding gaat uit van een schone Debian installatie met internettoegang. De stappen zijn getest op recente Debian-versies (zoals Debian 12).
{{< /notice >}}
## Benodigdheden
- Een server met een ondersteunde Debian Linux installatie
- Toegang tot de command line (bijvoorbeeld via SSH)
- Rechten als `su` of `sudo` om opdrachten als root uit te voeren
- Werkende internetverbinding
## Voorbereiding
Zorg dat het systeem up-to-date is voordat je Docker installeert.
1. Log in met SSH.
```bash
ssh gebruiker@server
```
2. Werk de pakketbron en geïnstalleerde pakketten bij.
```bash
sudo apt update && sudo apt upgrade
```
## Docker repository toevoegen
We installeren Docker vanaf de officiële Docker repository in plaats van de standaard Debian-pakketten.
1. Installeer vereiste hulppakketten.
```bash
sudo apt install ca-certificates curl gnupg
```
2. Maak de map aan voor de Docker GPG-sleutel.
```bash
sudo install -m 0755 -d /etc/apt/keyrings
```
3. Download en installeer de Docker GPG-sleutel.
```bash
curl -fsSL https://download.docker.com/linux/debian/gpg | \
sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
```
4. Stel de juiste rechten in op de sleutel.
```bash
sudo chmod a+r /etc/apt/keyrings/docker.gpg
```
5. Voeg de Docker repository toe.
```bash
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian $(. /etc/os-release && echo \"$VERSION_CODENAME\") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
```
6. Werk de pakketlijst bij.
```bash
sudo apt update
```
## Docker installeren
Installeer nu Docker Engine en de bijbehorende componenten.
```bash
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
```
Controleer of de Docker service actief is.
```bash
sudo systemctl status docker
```
Als Docker niet actief is, start de service en zorg dat deze automatisch start na een reboot.
```bash
sudo systemctl enable --now docker
```
## Docker installatie testen
Voer de officiële testcontainer uit om te controleren of Docker goed werkt.
```bash
sudo docker run hello-world
```
Je zou een bericht moeten zien dat bevestigt dat Docker correct is geïnstalleerd en een testcontainer heeft uitgevoerd.

View File

@@ -0,0 +1,154 @@
---
title: "NextCloud (Docker)"
date: 2025-11-10
weight: 3
feedback: true
draft: false
---
NextCloud is een open source platform voor bestandssynchronisatie en samenwerking, vergelijkbaar met diensten als Dropbox of OneDrive. In deze handleiding installeren we NextCloud op een Debian server met behulp van Docker en Docker Compose.
{{< notice "info" "Informatie" >}}
Deze handleiding gaat uit van een Debian server waarop Docker en de Docker Compose plugin al zijn geïnstalleerd, zoals beschreven in het bovenliggende artikel **Docker**.
{{< /notice >}}
## Benodigdheden
- Een server met een ondersteunde Debian Linux installatie
- Docker en Docker Compose plugin geïnstalleerd
- Een domeinnaam
- DNS ingesteld naar het IP-adres van de server
- Rechten als `su` of `sudo` om opdrachten als root uit te voeren
## Voorbereiding
Zorg dat het systeem up-to-date is voordat je begint.
1. Log in met SSH.
```bash
ssh gebruiker@server
```
2. Werk de pakketbron en geïnstalleerde pakketten bij.
```bash
sudo apt update && sudo apt upgrade
```
3. Controleer of Docker en Docker Compose beschikbaar zijn.
```bash
docker --version
docker compose version
```
## Mapstructuur aanmaken
We plaatsen de Docker Compose configuratie en data in `/opt/nextcloud`.
1. Maak de basisstructuur aan.
```bash
sudo mkdir -p /opt/nextcloud/{db,nextcloud}
```
2. Geef de huidige gebruiker toegang (optioneel, handig voor beheer).
```bash
sudo chown -R $USER:$USER /opt/nextcloud
```
3. Ga naar de NextCloud map.
```bash
cd /opt/nextcloud
```
## Docker Compose bestand maken
We gebruiken een `docker-compose.yml` met NextCloud en MariaDB als database.
1. Maak het bestand `docker-compose.yml`.
```bash
nano docker-compose.yml
```
2. Plaats de volgende configuratie in het bestand:
```yaml
version: "3.9"
services:
db:
image: mariadb:11
container_name: nextcloud_db
restart: unless-stopped
command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
environment:
- MYSQL_ROOT_PASSWORD=sterk-root-wachtwoord
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
- MYSQL_PASSWORD=sterk-db-wachtwoord
volumes:
- ./db:/var/lib/mysql
app:
image: nextcloud:stable
container_name: nextcloud_app
restart: unless-stopped
ports:
- "8080:80"
depends_on:
- db
environment:
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
- MYSQL_PASSWORD=sterk-db-wachtwoord
- MYSQL_HOST=db
volumes:
- ./nextcloud:/var/www/html
```
{{< notice "info" "Informatie" >}}
Vervang `sterk-root-wachtwoord` en `sterk-db-wachtwoord` door sterke, unieke wachtwoorden. Bewaar deze veilig.
{{< /notice >}}
## NextCloud containers starten
1. Download de benodigde images en start de containers in de achtergrond.
```bash
docker compose up -d
```
2. Controleer of de containers draaien.
```bash
docker ps
```
Je zou nu containers moeten zien met namen zoals `nextcloud_app` en `nextcloud_db`.
## NextCloud installatie afronden
1. Open een browser en ga naar:
```text
http://server-ip:8080
```
of, indien je een domeinnaam en reverse proxy gebruikt:
```text
https://voorbeeld.nl
```
2. Volg de stappen van de NextCloud installatie:
- Stel een beheerdersgebruikersnaam en wachtwoord in
- Controleer dat de database-instellingen overeenkomen met de waarden uit `docker-compose.yml`
{{< notice "info" "Informatie" >}}
Na afronden keert NextCloud terug naar de login-pagina en kun je inloggen met het beheerdersaccount.
{{< /notice >}}
## Data en back-ups
Alle gegevens worden opgeslagen in:
- Database: `/opt/nextcloud/db`
- NextCloud bestanden en configuratie: `/opt/nextcloud/nextcloud`
{{< notice "warning" "Waarschuwing" >}}
Maak regelmatig back-ups van deze mappen, bij voorkeur met de containers eerst in een consistente staat (bijvoorbeeld tijdelijk stoppen)
{{< /notice >}}
Voer het volgende uit om een back-up te maken.
```bash
cd /opt/nextcloud
docker compose down
tar czf nextcloud-backup-$(date +%F).tar.gz db nextcloud
docker compose up -d
```