LogAnalysis fur Docker
Docker WebGUI zum Betrachten und Durchsuchen von /var/log des Host-Systems
In sogenannten Protokoll- oder Logdateien (engl. logfiles) protokolliert jedes Linux-System samtliche Ereignisse, Probleme und Fehler des Systems sowie laufender Dienste. Diese Informationen werden in unterschiedlichen Textdateien abgelegt, die sich in der Regel im Ordner /var/log sowie in angeschlossenen Unterordnern befinden. Das Betrachten dieser Textdateien erfolgt normalerweise in einem beliebigen Editor, der uber das Terminal ausgefuhrt wird. Mit LogAnalysis fur Docker konnen diese Dateien uber eine WebGUI komfortabel betrachtet und durchsucht werden.
Wichtiger Hinweis
LogAnalysis fur Docker befindet sich aktuell noch im Testbetrieb weshalb von einem produktiven Einsatz dringend abzuraten ist. Alle sind herzlich dazu eingeladen, sich an der Weiterentwicklung zu beteiligen oder um Wunsche, Fehler und Probleme zu melden.
Installationshinweise
-
Wechsle zum GitHub-Repository LogAnalysis fur Docker und klicke entweder auf Releases in der rechten Seitenleiste, um dir alle Versionen von LogAnalysis anzeigen zu lassen, oder klicke direkt darunter auf die aktuellste Version.
-
Wahle in der Tabelle direkt unter den Release Notes das Archiv mit dem Namen Source Code (zip) oder Source Code (tar.gz), um die jeweilige Datei herunterzuladen.
-
Nachdem das gewunschte Archiv heruntergeladen wurde, muss es mit einem geeigneten Programm entpackt werden, sofern das verwendete Betriebssystem uber keine integrierte Funktion verfugt. Dabei ist darauf zu achten, dass das Archiv in einem neuen Unterverzeichnis entpackt wird, das den Namen der Archivdatei tragt.
-
Wechsel anschliessend in das lokale Docker-Verzeichnis und erstelle dort ein neues Unterverzeichnis mit dem Namen loganalysis.
Beispiel:
mkdir -p /volume1/docker/loganalysis -
Kopiere den Inhalt des zuvor enpackten Archives in dieses Unterverzeichnis.
Beispiel:
cp -r ~/Downloads/Docker_LogAnalysis-0.1-100/* /volume1/docker/loganalysis -
Wechsle nun in das Unterverzeichnis loganalysis deines Docker-Verzeichnisses und fuhre das "Dockerfile" mit Root-Rechten aus, um das Docker-Image zu erstellen. Verwende dafur den folgenden Befehl:
sudo docker build -t loganalysis . -
Starte einen neuen Container aus dem gerade erstellten Image, um LogAnalysis auszufuhren. Verwende dafur den folgenden Befehl:
sudo docker run -it -d --name LogAnalysis -p 8080:80 -v /var/log:/tmp/log loganalysisWichtiger Hinweis: Gegebenenfalls muss der Port angepasst werden, uber den LogAnalysis erreichbar sein soll. In diesem Beispiel wurde der Port 8080 gewahlt.
-
Nach dem erfolgreichen Start des Containers ist dieser uber folgende Adresse erreichbar:
Beispiel:
http://IP-ADRESSE:8080
Container anzeigen, starten, stoppen und loschen
Hinweis 1: Wenn man nicht als Systembenutzer root an der Kommandozeile angemeldet ist, muss jedem nachfolgenden Befehl sudo vorangestellt werden.
Hinweis 2: In den nachfolgenden Beispielen mussen selbstverstandlich die eigenen, ermittelten Angaben zur Container-ID [CONTAINER ID] bzw. Container-Name [NAMES] eingesetzt werden.
-
Laufende Container anzeigen
Mit dem Befehl
docker pswerden alle aktuell ausgefuhrten Container aufgelistet. Die nachfolgende Ausgabe wird dabei auf den LogAnalysis-Container beschrankt.sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a6a7a3770ccc loganalysis "/usr/sbin/apache2ct..." 19 minutes ago Up 19 minutes 0.0.0.0:8080->80/tcp, :::8080->80/tcp LogAnalysisUm sich alle vorhandenen Container anzeigen zu lassen, muss der Befehl
docker psum den Parameter-a(fur all) erganzt werden.sudo docker ps -aUm einen Container zu einem spateren Zeitpunkt zu starten, zu stoppen oder zu loschen, ist vor allem die Container-ID [CONTAINER ID] oder der Container-Name [NAMES] wichtig.
-
Container starten
Ein Container kann mit dem Befehl
docker startunter der Angabe der zuvor ermittelten Container-ID bzw. des Container-Namens gestartet werden.Beispiel
sudo docker start a6a7a3770ccc -
Container stoppen
Ein Container kann mit dem Befehl
docker stopunter der Angabe der zuvor ermittelten Container-ID bzw. des Container-Namens angehalten bzw. gestoppt werden.Beispiel
sudo docker stop a6a7a3770ccc -
Container loschen
Ein Container kann mit dem Befehl
docker rmunter der Angabe der zuvor ermittelten Container-ID bzw. des Container-Namens geloscht werden. Dabei ist zu beachten, dass der Container zuvor gestoppt wurde.Beispiel
sudo docker rm a6a7a3770cccEin Container sollte immer dann geloscht werden, wenn er entweder nicht mehr benotigt wird, oder wenn eine neuere Build-Version des Containers verfugbar ist, um daraus ein neues Image, wie weiter oben beschrieben, zu erstellen und auszufuhren.
Alle Images anzeigen um ein bestimmtes zu loschen
Hinweis 1: Wenn man nicht als Systembenutzer root an der Kommandozeile angemeldet ist, muss jedem nachfolgenden Befehl sudo vorangestellt werden.
Hinweis 2: In den nachfolgenden Beispielen mussen selbstverstandlich die eigenen, ermittelten Angaben zur Image-ID [IMAGE ID] bzw. zum Namen des Repositorys [REPOSITORY], gefolgt von dessen Tag [TAG] eingesetzt werden.
-
Alle Images anzeigen
Mit dem Befehl
docker imageswerden alle auf dem System verfugbaren Images aufgelistet. Die nachfolgende Ausgabe wird dabei auf den LogAnalysis-Container beschrankt.sudo docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
loganalysis latest 90f848157f5e 7 hours ago 233MB -
Image loschen
Ein Image kann mit dem Befehl
docker rmiunter der Angabe der zuvor ermittelten Image-ID geloscht werden. Dabei ist zu beachten, dass zuvor alle mit diesem Image verbundenen Container gestoppt wurden.Beispiel
sudo docker rmi 90f848157f5eAlternativ kann ein Image auch anhand des Repository-Namens und dessen Tags geloscht werden.
Beispiel
sudo docker rmi loganalysis:latestNachdem das Image geloscht wurde, kann bei Bedarf ein neues, aktuelleres Image erstellt werden. Die Vorgehensweise ist unter dem Punkt Installationshinweise beschrieben.
Hilfe und Diskussion
- Synology Forum:
LogAnalysis - GUI zum betrachten und durchsuchen von /var/log - UGREEN Forum - DACH Community:
LogAnalysis - fur Docker (ein erster Versuch)
Versionsgeschichte
- Details zur Versionsgeschichte finden Sie in der Datei CHANGELOG.