ElasticSearch dient euch als Volltextsuche in Nextcloud. Alle, die keinen Bedarf daran haben, können diese Anleitung verwenden.

Nun zeige ich euch, wie ihr dies in wenigen Minuten mit Docker realisiert. Traefik dient uns hier als Reverse Proxy und stellt später den Dienst verschlüsselt per TLS bereit.

Update

30.12.2020 Erstellung dieser Anleitung.

Wer Traefik noch nicht installiert hat, findet hier eine Anleitung, wie ihr dies schnell tun könnt.

Als Grundlage meiner Anleitung dient die offizielle Nextcloud Anleitung für Docker.

Diese Anleitung wurde am 30.12.2020 für Nextcloud 20.0.4 erstellt.

1. Ordner anlegen

Zuerst legen wir uns passende Ordner-Strukturen an.

mkdir -p /opt/containers/nextcloud/{database,app,daten,nextcloud-app,imagemagick}
mkdir -p /opt/containers/nextcloud/elasticsearch/data
chmod 777 -R /opt/containers/nextcloud/elasticsearch/data

2. Docker Compose anlegen

Nun legen wir die eigentliche Docker Datei an. Hierfür habe ich mir die offizielle Nextcloud Compose genommen und diese abgeändert für Traefik.

cd /opt/containers/nextcloud/
nano docker-compose.yml

Inhalt

version: '3.3'

services:
  nextcloud-db:
    image: mariadb
    container_name: nextcloud-db
    command: --transaction-isolation=READ-COMMITTED --log-bin=ROW
    restart: unless-stopped
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - /etc/timezone:/etc/timezone:ro
      - /opt/containers/nextcloud/database:/var/lib/mysql
    environment:
      - MYSQL_ROOT_PASSWORD=test #SQL root Passwort eingeben
      - MYSQL_PASSWORD=test #SQL Benutzer Passwort eingeben
      - MYSQL_DATABASE=nextcloud #Datenbank Name
      - MYSQL_USER=nextcloud #SQL Nutzername
      - MYSQL_INITDB_SKIP_TZINFO=1 
    networks:
      - default

  nextcloud-redis:
    image: redis:alpine
    container_name: nextcloud-redis
    hostname: nextcloud-redis
    networks:
        - default
    restart: unless-stopped
    command: redis-server --requirepass test # Redis Passwort eingeben

  nextcloud-app:
    build: ./nextcloud-app
    container_name: nextcloud-app
    restart: unless-stopped
    depends_on:
      - nextcloud-db
      - nextcloud-redis
    environment:
        REDIS_HOST: nextcloud-redis
        REDIS_HOST_PASSWORD: test # Redis Passwort von oben wieder eingeben
    volumes:
      - /opt/containers/nextcloud/app:/var/www/html
      - /opt/containers/nextcloud/daten:/var/www/html/data
      - /opt/containers/nextcloud/imagemagick/policy.xml:/etc/ImageMagick-6/policy.xml

    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.nextcloud-app.entrypoints=http"
      - "traefik.http.routers.nextcloud-app.rule=Host(`nextcloud.euredomain.de`)"
      - "traefik.http.middlewares.nextcloud-app-https-redirect.redirectscheme.scheme=https"
      - "traefik.http.routers.nextcloud-app.middlewares=nextcloud-app-https-redirect"
      - "traefik.http.routers.nextcloud-app-secure.entrypoints=https"
      - "traefik.http.routers.nextcloud-app-secure.rule=Host(`nextcloud.euredomain.de`)"
      - "traefik.http.routers.nextcloud-app-secure.tls=true"
      - "traefik.http.routers.nextcloud-app-secure.tls.certresolver=http"
      - "traefik.http.routers.nextcloud-app-secure.service=nextcloud-app"
      - "traefik.http.services.nextcloud-app.loadbalancer.server.port=80"
      - "traefik.docker.network=proxy"
      - "traefik.http.routers.nextcloud-app-secure.middlewares=nextcloud-dav,secHeaders@file"
      - "traefik.http.middlewares.nextcloud-dav.replacepathregex.regex=^/.well-known/ca(l|rd)dav"
      - "traefik.http.middlewares.nextcloud-dav.replacepathregex.replacement=/remote.php/dav/"
    networks:
      - proxy
      - default

  elasticsearch:
    build: ./elasticsearch
    container_name: elasticsearch
    restart: unless-stopped
    environment:
      - discovery.type=single-node
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - /opt/containers/nextcloud/elasticsearch/data:/usr/share/elasticsearch/data
    ports:
      - "9200:9200"
      - "9300:9300"
    networks:
      - default

networks:
  proxy:
    external: true

Notwendige Anpassungen:

  1. MySQL Root Passwort ändern
  2. MySQL User Kennwort ändern
  3. MySQL User für Nextcloud ändern
  4. 2x eure Domain bei Traefik anpassen (nextcloud.euredomain.de“)

Diese Docker Compose Datei funktioniert nur, wenn ich euch mittels meiner Anleitung hier Traefik installiert habt. Sonst heißen einige Traefik Variablen wohl anders. Diese müsst ihr dann dementsprechend bei euch anpassen.

3. Anpassungen für ImageMagick

ImageMagick wird verwendet um aus PDF Seiten Fotos zu erstellen. Diese können später per OCR erkannt werden. Es gibt derzeit wohl ein kleines Hindernis (Github Quelle) weshalb wir hier noch eine extra Anpassung vornehmen müssen.

nano /opt/containers/nextcloud/imagemagick/policy.xml

Inhalt:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE policymap [
  <!ELEMENT policymap (policy)+>
  <!ATTLIST policymap xmlns CDATA #FIXED ''>
  <!ELEMENT policy EMPTY>
  <!ATTLIST policy xmlns CDATA #FIXED '' domain NMTOKEN #REQUIRED
    name NMTOKEN #IMPLIED pattern CDATA #IMPLIED rights NMTOKEN #IMPLIED
    stealth NMTOKEN #IMPLIED value CDATA #IMPLIED>
]>

<policymap>
  <!-- <policy domain="system" name="shred" value="2"/> -->
  <!-- <policy domain="system" name="precision" value="6"/> -->
  <!-- <policy domain="system" name="memory-map" value="anonymous"/> -->
  <!-- <policy domain="system" name="max-memory-request" value="256MiB"/> -->
  <!-- <policy domain="resource" name="temporary-path" value="/tmp"/> -->
  <policy domain="resource" name="memory" value="256MiB"/>
  <policy domain="resource" name="map" value="512MiB"/>
  <policy domain="resource" name="width" value="16KP"/>
  <policy domain="resource" name="height" value="16KP"/>
  <!-- <policy domain="resource" name="list-length" value="128"/> -->
  <policy domain="resource" name="area" value="128MB"/>
  <policy domain="resource" name="disk" value="1GiB"/>
  <!-- <policy domain="resource" name="file" value="768"/> -->
  <!-- <policy domain="resource" name="thread" value="4"/> -->
  <!-- <policy domain="resource" name="throttle" value="0"/> -->
  <!-- <policy domain="resource" name="time" value="3600"/> -->
  <!-- <policy domain="coder" rights="none" pattern="MVG" /> -->
  <!-- <policy domain="module" rights="none" pattern="{PS,PDF,XPS}" /> -->
  <!-- <policy domain="delegate" rights="none" pattern="HTTPS" /> -->
  <!-- <policy domain="path" rights="none" pattern="@*" /> -->
  <!-- <policy domain="cache" name="memory-map" value="anonymous"/> -->
  <!-- <policy domain="cache" name="synchronize" value="True"/> -->
  <!-- <policy domain="cache" name="shared-secret" value="passphrase" stealth="true"/> -->
  <!-- <policy domain="system" name="pixel-cache-memory" value="anonymous"/> -->
  <!-- <policy domain="system" name="shred" value="2"/> -->
  <!-- <policy domain="system" name="precision" value="6"/> -->
  <!-- not needed due to the need to use explicitly by mvg: -->
  <!-- <policy domain="delegate" rights="none" pattern="MVG" /> -->
  <!-- use curl -->
  <policy domain="delegate" rights="none" pattern="URL" />
  <policy domain="delegate" rights="none" pattern="HTTPS" />
  <policy domain="delegate" rights="none" pattern="HTTP" />
  <!-- in order to avoid to get image with password text -->
  <policy domain="path" rights="none" pattern="@*"/>
  <!-- disable ghostscript format types -->
  <policy domain="coder" rights="none" pattern="PS" />
  <policy domain="coder" rights="none" pattern="PS2" />
  <policy domain="coder" rights="none" pattern="PS3" />
  <policy domain="coder" rights="none" pattern="EPS" />
  <policy domain="coder" rights="read | write" pattern="PDF" />
  <policy domain="coder" rights="none" pattern="XPS" />
</policymap>

4. Anpassung für Nextcloud

In der aktuellen Version muss noch GhostScript in den Nextcloud Container hinzugefügt werden. Daher müssen wir uns den Container selbst bauen.

nano /opt/containers/nextcloud/nextcloud-app/Dockerfile

Inhalt:

FROM nextcloud
RUN apt-get update
RUN apt-get install -y ghostscript

5. Anpassungen für ElasticSearch

Um die OCR Erkennung in ElasticSearch zu realisieren benötigen wir noch das Programm Tesseract. Daher müssen wir uns den ElasticSearch Container auch selbst bauen.

nano /opt/containers/nextcloud/elasticsearch/Dockerfile

Inhalt:

FROM elasticsearch:7.10.1
RUN /usr/share/elasticsearch/bin/elasticsearch-plugin install --batch ingest-attachment
RUN yum install -y yum-utils.noarch
RUN yum-config-manager --add-repo https://download.opensuse.org/repositories/home:/Alexander_Pozdnyakov/CentOS_8/
RUN yum -y install tesseract --nogpgcheck
RUN yum -y install tesseract-langpack-deu --nogpgcheck

Hier könnt ihr noch weitere Sprachen installieren zur OCR Erkennung. Eine Übersicht alles Sprachen findet ihr hier.

6. Nextcloud Server starten

Zuerst bauen wir uns alle Container zusammen.

cd /opt/containers/nextcloud
docker-compose build

Den Server startet ihr wie gewohnt mit folgendem Befehl:

docker-compose -f /opt/containers/nextcloud/docker-compose.yml up -d

7. Nextcloud einrichten

Nun müsst ihr auf  „nextcloud.euredomain.de“ gehen. Hier müsst ihr jetzt die Verbindung zur SQL Datenbank herstellen sowie einen Administrator für Nextcloud anlegen.

Zuerst klickt ihr auf „Speicher & Datenbank“.

Hier wählt ihr nun „MySQL/MariaDB“ aus.

Jetzt solltet ihr folgendes sehen.

Gebt hier nun folgendes ein:

Administrator-Konto anlegen

  • Benutzername: Wie euer Nextcloud Admin heißen soll
  • Passwort: Wählt ein Passwort

Datenbank Verbindung herstellen

  • Datenbank-Benutzer: Holt den Namen aus dem Docker Compose Datei
  • Datenbank-Passwort: Holt das Passwort aus dem Docker Compose Datei
  • Datenbank-Name: Haben wir in Docker Compose auf „nextcloud“ festgelegt
  • Datenbank-Host: Haben wir in Docker Compose auf „nextcloud-db“ festgelegt

Wenn ihr anschließend auf „Installation abschließen“ klickt, dauert es ca. 30 Sekunden, bis die Webseite neu lädt und Nextcloud fertig installiert ist. Ihr werdet dann so begrüßt.

8. Optimierungen

Wenn ihr nun unter „Einstellungen“ -> „Übersicht“ geht, solltet ihr feststellen, dass Nextcloud noch „Optimierungsbedarf“ sieht. Dies wollen wir nun tun.

8.1 Datenbank optimieren

Zuerst führt ihr also folgende Befehle aus, während eure Nextcloud Instanz noch läuft.

docker exec --user www-data nextcloud-app php occ db:add-missing-indic

Die Ausgabe sieht bei mir so aus:

root@xxx:/opt/containers/nextcloud# docker exec --user www-data nextcloud-app php occ db:add-missing-indic
Check indices of the share table.
Check indices of the filecache table.
Check indices of the twofactor_providers table.
Check indices of the login_flow_v2 table.
Check indices of the whats_new table.
Check indices of the cards table.
Check indices of the cards_properties table.
Check indices of the calendarobjects_props table.
Adding calendarobject_calid_index index to the calendarobjects_props table, this can take some time...
calendarobjects_props table updated successfully.
Check indices of the schedulingobjects table.
Adding schedulobj_principuri_index index to the schedulingobjects table, this can take some time...
schedulingobjects table updated successfully.

Als nächstes gebt ihr folgenden Befehl ein:

docker exec --user www-data nextcloud-app php occ db:convert-filecache-bigint

Meine Ausgabe:

root@xxx:/opt/containers/nextcloud# docker exec --user www-data nextcloud-app php occ db:convert-filecache-bigint
Following columns will be updated:

* mounts.storage_id
* mounts.root_id
* mounts.mount_id

This can take up to hours, depending on the number of files in your instance!

8.2 Reverse Proxy Konfiguration

Als nächstes sagen wir Nextcloud, dass es unserem Traefik Reverse Proxy vertrauen kann. Dazu müssen wir dessen IP-Adresse herausfinden. Gebt folgenden Befehl ein:

docker inspect traefik

Wenn ihr nun ganz nach unten scrollt, seht ihr folgendes:

Bei mir ist die „IPAddress“: 172.18.0.2 und das „IPPrefixLen“: 16

Mit diesen beiden Werten öffnen wir nun die Nextcloud config.php.

nano /opt/containers/nextcloud/app/config/config.php

Hier fügt ihr nun folgende Zeile ein. Passt diese aber bitte an eure Konfiguration ein.

'trusted_proxies' => '172.18.0.2/16',

8.3 Nextcloud komplett auf HTTPs umstellen

Wenn ihr euch bei Nextcloud anmelden, dann fällt euch sicher auf, dass einige Symbole nicht angezeigt werden. Dies hängt damit zusammen, dass diese per HTTP nachgeladen werden sollen. Dies wird aber blockiert.

Um dies zu lösen öffnen wir wieder die Konfigurationsdatei:

nano /opt/containers/nextcloud/app/config/config.php

Hier ändert ihr nun folgende Zeile:

vorher:
 'overwrite.cli.url' => 'http://nextcloud.euredomain.de',

nachher:
 'overwrite.cli.url' => 'https://nextcloud.euredomain.de',

Anschließend fügt ihr noch folgenden Zeilen hinzu:

  'overwriteprotocol' => 'https',
  'overwritehost' => 'nextcloud.euredomain.de',

Dies sollte dann so aussehen.

8.4 Container neu starten

Nun starten wir Nextcloud neu um sicherzugehen, dass alle Einstellungen übernommen werden. Nun sollte es so aussehen:

9. Collabora Office integrieren

Ich habe hier eine Anleitung geschrieben, wie ihr in wenigen Minuten Collabora Office mittels Docker installiert und in Nextcloud integrieren könnt. Collabora Office ermöglicht euch ein „komplettes online Office“ innerhalb von Nextcloud.

10. ElasticSearch integrieren

Nun könnt ihr noch ElasticSearch integrieren. Dazu müsst ihr noch ein paar Apps in Nextcloud installieren. Meldet euch dazu als Administrator an.

10.1 Apps installieren

Klickt nun auf euren „Buchstaben“ und wählt „Apps“ aus.

Wählt nun hier „Suche“ aus.

Nun installiert ihr alle Apps bis auf die „Bookmarks“ App, da diese zum aktuellen Zeitpunkt noch „ungetestet“ ist.

10.2 Verbindung zu ElasticSearch herstellen

Nun müssen wir die Apps noch konfigurieren. Dazu klickt ihr auf euren „Buchstaben“ und wählt „Einstellungen“ aus.

Anschließend klickt ihr auf „Volltextsuche“.

Hier gebt ihr nun folgendes ein:

Ihr könnt die Einstellungen auch nach euren Wünschen anpassen.

Nun seid ihr in Nextcloud fertig.

10.3 Volltextsuche initialisieren

Nachdem ihr nun das Plugin eingerichtet habt müsst ihr noch die Suche initialisieren. Dazu gebt ihr folgenden Befehl ein:

docker exec --user www-data nextcloud-app php occ fulltextsearch:index

Anschließend werden alle bisherigen Dateien initialisiert. Dies kann etwas dauern.

Nun könnt ihr alle Dateien suchen, die bisher erstellt wurden.

10.4 Neue Dateien initialisieren

Ihr müsst wissen, dass nur Dateien / Texte gesucht werden können, die bereits initialisiert wurden. Wenn ihr also nur 1x täglich eure Dateien initialisiert, dann könnt ihr die Daten / Texte also immer erst nach der nächsten Initialisierung nutzen.

Ihr habt 2 Möglichkeiten der Initialisierung:

  • Dateien Live initialisieren
  • Dateien zu einen festen Zeitpunkt initialisieren

10.4.1 Live initialisieren

Dazu gebt ihr folgenden Befehl ein:

docker exec --user www-data nextcloud-app php occ fulltextsearch:live

Nun solltet ihr folgendes sehen:

Der Befehl wird jetzt innerhalb des Containers ausgeführt und ihr könnt mit „STRG+C“ die Ausgabe abbrechen. Im Container läuft trotzdem noch alles weiter.

10.4.2 Zu einem festen Zeitpunkt initialisieren

Dazu erstellt ihr einen Cron Job. Gebt dazu folgendes ein:

crontab -e

Wählt nun folgendes aus:

Select an editor.  To change later, run 'select-editor'.
  1. /bin/nano        <---- easiest
  2. /usr/bin/vim.tiny

Choose 1-2 [1]: 1

Nun gebt ihr folgendes ein:

0 5 * * * docker exec --user www-data nextcloud-app php occ fulltextsearch:index

Durch diesen Code wird euer Server jeden Tag um 05:00 Uhr alle Dateien initialisieren. Weitere Einstellungen zu Cron findet ihr hier.

10.5 Volltextsuche nutzen

Nachdem ihr alles eingerichtet habt könnt ihr die Volltextsuche nutzen. Dazu klickt ihr oben auf die „Lupe“ und gebt euren Suchbegriff ein.

11. Quellen

https://hub.docker.com/_/nextcloud/

https://teqqy.de/nextcloud-docker-tutorial-step-by-step-zum-erfolg/

https://markus-blog.de/index.php/2018/06/21/how-to-install-fulltextsearch-in-nextcloud-13-with-elasticsearch-and-tesseract-ocr/

https://nerdblog.steinkopf.net/2018/07/nextcloud-volltext-index-mit-docker-und-elasticsearch/

https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html

https://github.com/tesseract-ocr/tesseract

https://github.com/nextcloud/fulltextsearch/issues/584

https://github.com/nextcloud/files_fulltextsearch/issues/100

Teile diesen Beitrag
Christian

Categories:

18 Kommentare

  1. Leider erhalte ich folgenden Error:
    ERROR: for elasticsearch Cannot start service elasticsearch: OCI runtime create failed: container_linux.go:370: starting container process caused: process_linux.go:459: container init caused: process_linux.go:382: setting rlimits for ready process caused: error setting rlimit type 8: operation not permitted: unknown

    ERROR: for elasticsearch Cannot start service elasticsearch: OCI runtime create failed: container_linux.go:370: starting container process caused: process_linux.go:459: container init caused: process_linux.go:382: setting rlimits for ready process caused: error setting rlimit type 8: operation not permitted: unknown
    ERROR: Encountered errors while bringing up the project.

    Komplett neu installiert unter debian 10, Traefik gemäss Anleitung erstellt.
    folgende Meldung:
    nextcloud-db is up-to-date
    nextcloud-redis is up-to-date
    Starting elasticsearch … error
    Starting nextcloud-app … done

  2. Vielen Dank für die Anleitung. Ich habe Traefik auch ans Laufen bekommen und kann via Internet darauf zu greifen. Beim Versuch, den Nextcloud-Container zu installieren, also oben bei Schritt 3.) bekomme ich am Ende der Download- und Installationsnachrichten nur folgende Fehlermeldung:
    ERROR: Cannot locate specified Dockerfile: Dockerfile
    Was kann ich tun?

  3. „Problem“ gelöst! Sorry für soviel Unsinn. Ich habe mich zwischen „alter“ und „neuer“ Anleitung verirrt.
    Jetzt läuft alles bestens !

  4. Auch hier, danke für die Anleitung. Ich habe beim Bearbeiten der crontab auch gleich noch einen Job für das Aufrufen der cron.php mit eingefügt, damit Hintergrund-Aufgaben alle 5 min ausgeführt werden.

    */5 * * * * docker exec –user www-data nextcloud-app php -f /var/www/html/cron.php

  5. We have detected multiple invalid login attempts from your IP. Therefore your next login is throttled up to 30 seconds. Bekomme ich, wenn ich mich neu einloggen will. Der Container sieht dabei nur die 172.x.x.x adresse und bannt mich nach einer weile

  6. Hi zusammen,
    als Hinweis, falls jemand das gleiche Problem hat wie ich:

    In der Datei:
    nano /opt/containers/nextcloud/elasticsearch/Dockerfile

    muss bei den Zeilen 5 und 6:
    RUN yum -y install tesseract –nogpgcheck
    RUN yum -y install tesseract-langpack-deu –nogpgcheck

    jeweils hinten ein –skip-broken
    angehängt werden

    LG und viel Erfolg

  7. Vielen Dank für den erstklassigen Guide! Die Nextcloud-Installation läuft inkl. der Volltextsuche super!
    Leider scheint es aber ein Problem mit Tesseract OCR zu geben. Wenn ich Bilder und gescannte PDFs (die nicht bereits OCR beinhalten) in der Nextcloud ablege, finde ich die Inhalte über die Volltextsuche nicht. Fehlermeldungen konnte ich aber auch keine entdecken.

    Hat jemand einen Tipp bezüglich OCR für mich? Gibt es ein Logfile in welchem ich die korrekte Ausführung von Tesseract nachvollziehen kann?

  8. Hallo,
    Vielen Dank für die super Anleitung!

    wenn ich versuche den Volltext zu initialisieren (sudo docker exec –user www-data nextcloud-app php occ fulltextsearch:index) kommt bei mir folgendes Problem:

    —–
    In StaticNoPingConnectionPool.php line 64:

    No alive nodes found in your cluster

    fulltextsearch:index [–output [OUTPUT]] [-r|–no-readline] [–] []
    ——

    wenn ich `curl -XGET ‚localhost:9200’` versuche kommt folgendes:
    —–
    curl: (7) Failed to connect to localhost port 9200: Verbindungsaufbau abgelehnt
    —–

    Wisst ihr was ich falsch gemacht haben könnte? Vorsicht DAU am Werk 😉

    Viele Grüße

  9. Hallo, wo gibt es evtl. eine Anleitung für eine locale Nutzung?

    Bei einem vServer im Internet konnte ich die Anleitung nachstellen.

    Bei Virtualbox localen Server kann ich die traefik gar nicht erreichen.

    http://192.168.178.58/admin/
    Fehler: unsichere Verbindung akzeptiert, dann 404 page not found.

    Wie löse ich das Problem?

    MfG
    Matthias

  10. Hallo zusammen,

    erstmal vielen Dank für die sehr schöne und gute Anleitung.

    Leider habe ich noch Probleme mit der Texterkennung. Wenn ich übers iphone über die App ein Dokument einscanne und fotografiere funktioniert es. Bei eingescannten PDF’s wird leider kein Text erkannt.

    Fehlermeldungen kann ich keine finden und ich habe mich genau an deine Anleitung gehalten.
    Hat jemand ne Idee oder das gleiche Problem?

    Viele Grüße
    Jonas

  11. Christian, dir zunächst vielen Dank für deine ausführlichen und tollen Anleitungen!

    Leider komme ich bei Punkt 7 nicht weiter, ich erhalte folgende Fehlermeldung:
    Error while trying to create admin user: Failed to connect to the database: An exception occurred in the driver: SQLSTATE[HY000] [1045] Access denied for user ’ncuser‘

    Kann mir hier vielleicht jemand weiterhelfen?

    Viele Grüße
    Christoph

  12. Hallo,

    tatsächlich kann sich die IP des traefik containers ändern, wenn man z.B. den Server neu startet. Dies bedeutet aber auch, dass man die Nextcloudconfig anpassen muss.
    Um das zu verhindern kann man eine feste IP vergeben sowie den Adressraum angeben. Damit entfällt dann auch das manuelle erstellen des Netzwerks.

    in der Traefik.yml folgendes hinzufügen

    services:
    traefik:

    networks:
    proxy:
    ipv4_address: 172.18.0.2

    networks:
    proxy:
    name: proxy
    ipam:
    config:
    – subnet: 172.18.0.0/16

    Haltet ihr das füe sinnvoll?

    Viele Grüße
    Jonas
    ps. mein OCR-Problem konnte ich noch nicht lösen 🙁

    • um Probleme zu vermeiden sollte man lieber noch ip_range hinzufügen. mit ip_range gibt man den frei vergebbaren Adressraum an:

      config:
      – subnet: 172.18.0.0/16
      ip_range: 172.18.1.0/24

    • Hallo,
      das Update geht ganz einfach.

      Du gehst in das entsprechende Verzeichnis und führst folgende Befehle aus:

      docker-compose down
      docker-compose pull
      docker-compose up -d

      Viele Grüße
      Christian

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.