Docker Compose nextcloud
Zur Navigation springen
Zur Suche springen
Arbeitsverzeichnis erstellen
- mkdir -p /mnt/docker/nextcloud
- cd /mnt/docker/nextcloud
Docker Compose Datei erstellen
- vi docker-compose.yml
version: '2'
volumes:
nextcloud:
db:
services:
db:
image: mariadb:10.6
restart: always
command: --transaction-isolation=READ-COMMITTED --log-bin=binlog --binlog-format=ROW
volumes:
- ./db:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=sysadm
- MYSQL_PASSWORD=suxer
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
app:
image: nextcloud:27.1.6
#image: nextcloud:28.0.2
#image: nextcloud:latest
restart: always
ports:
- 8080:80
links:
- db
volumes:
- ./nextcloud:/var/www/html
environment:
- MYSQL_PASSWORD=suxer
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
- MYSQL_HOST=db
Quellen
Erläuterung
| Eigenschaft | Beschreibung |
|---|---|
| version | Die Version des Docker-Compose-Formats, das in diesem YAML-File verwendet wird (hier: "2"). |
| volumes | Definiert benannte Volumes für das Persistieren von Daten (hier: "nextcloud" und "db"). |
| services | Definiert die Dienste (oder Container), die in diesem Docker-Compose-File konfiguriert werden. |
| db | Der Dienst für die Datenbank. |
| image | Das Docker-Image, das für den Dienst verwendet wird (hier: "mariadb:10.6"). |
| restart | Definiert das Neustartverhalten des Containers (hier: "always"). |
| command | Der Befehl, der beim Starten des Containers ausgeführt wird. |
| environment | Umgebungsvariablen, die dem Container bereitgestellt werden. |
| app | Der Dienst für die Nextcloud-Anwendung. |
| web | Der Dienst für den NGINX-Webserver. |
| ports | Leitet die Ports vom Host auf den Container weiter (hier: "8080:80"). |
| links | Verknüpft Dienste miteinander, um Kommunikation zu ermöglichen. |
| volumes_from | Bindet Volumes von einem anderen Container ein. |
Starten
- docker compose up -d
Logs
- docker compose logs
Down
- docker compose down
Update
Es ist eine gute Idee vorher eine Backup zu machen. Wenn der Versionssprung zu gross ist, kann es passieren, das man die Datenbank anpassen muss. Dies läuft dann in der Regel mit php Scripten.
Neues Image pullen
- docker compose pull