Docker Compose nextcloud: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
 
(4 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 6: Zeile 6:
 
<pre>
 
<pre>
 
version: '2'
 
version: '2'
 
 
volumes:
 
volumes:
 
   nextcloud:
 
   nextcloud:
 
   db:
 
   db:
 
 
services:
 
services:
 
   db:
 
   db:
Zeile 17: Zeile 15:
 
     command: --transaction-isolation=READ-COMMITTED --log-bin=binlog --binlog-format=ROW
 
     command: --transaction-isolation=READ-COMMITTED --log-bin=binlog --binlog-format=ROW
 
     volumes:
 
     volumes:
       - db:/var/lib/mysql
+
       - ./db:/var/lib/mysql
 
     environment:
 
     environment:
       - MYSQL_ROOT_PASSWORD=
+
       - MYSQL_ROOT_PASSWORD=sysadm
       - MYSQL_PASSWORD=
+
       - MYSQL_PASSWORD=suxer
 
       - MYSQL_DATABASE=nextcloud
 
       - MYSQL_DATABASE=nextcloud
 
       - MYSQL_USER=nextcloud
 
       - MYSQL_USER=nextcloud
 
 
   app:
 
   app:
     image: nextcloud:fpm
+
     image: nextcloud:27.1.6
 +
    #image: nextcloud:28.0.2
 +
    #image: nextcloud:latest
 
     restart: always
 
     restart: always
 +
    ports:
 +
      - 8080:80
 
     links:
 
     links:
 
       - db
 
       - db
 
     volumes:
 
     volumes:
       - nextcloud:/var/www/html
+
       - ./nextcloud:/var/www/html
 
     environment:
 
     environment:
       - MYSQL_PASSWORD=
+
       - MYSQL_PASSWORD=suxer
 
       - MYSQL_DATABASE=nextcloud
 
       - MYSQL_DATABASE=nextcloud
 
       - MYSQL_USER=nextcloud
 
       - MYSQL_USER=nextcloud
 
       - MYSQL_HOST=db
 
       - MYSQL_HOST=db
  
  web:
 
    image: nginx
 
    restart: always
 
    ports:
 
      - 8080:80
 
    links:
 
      - app
 
    volumes:
 
      - ./nginx.conf:/etc/nginx/nginx.conf:ro
 
    volumes_from:
 
      - app
 
 
</pre>
 
</pre>
 +
 
=Quellen=
 
=Quellen=
 
*https://hub.docker.com/_/nextcloud
 
*https://hub.docker.com/_/nextcloud
Zeile 90: Zeile 81:
 
=Logs=
 
=Logs=
 
*docker compose logs
 
*docker compose logs
=Starten=
+
=Down=
*docker compose stop
+
*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=
 
=Neues Image pullen=
 
*docker compose pull
 
*docker compose pull

Aktuelle Version vom 23. Februar 2024, 11:16 Uhr

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