-
Befehl in mehreren Docker-Containern ausführen
Möchte man bei vielen aktiven Containern bestimmte Inhalte abfragen, kann dies mit einer Schleife elegant als Einzeiler durchgeführt werden. Zuerst ist der Containername zu ermitteln und dann kann via docker exec der eigentliche Befehl im Container ausgeführt werden. Beispiel: Ermittlung der java Version in allen Containern (zur besseren Lesbarkeit auf mehrere Zeilen umgebrochen) for i in $(sudo docker ps --format '{{.Names}}') ; do echo "------" ; echo $i ; sudo docker exec $i bash -c "java -version" ; done —— important01.service openjdk version “1.8.0_171” OpenJDK Runtime Environment (build 1.8.0_171-b10) OpenJDK 64-Bit Server VM (build 25.171-b10, mixed mode) —— container02.service openjdk version “1.8.0_171” … usw.
-
Essentielle systemd Befehle
Zur Verwaltung und Überwachung der Systemd Dienste sind hauptsächlich zwei Befehle zuständig: systemctl journalctl Systemctl systemctl dient zur Verwaltung von Systemd Services (Starten, Stoppen, Neustart, Status Abfragen): systemctl [stop|start|restart|reload|status] rsyslog.service Service de-/aktivieren (permanent) systemctl enable rsyslog.service systemctl disable rsyslog.service Abfrage, ob ein Service aktiviert ist: systemctl is-enabled rsyslog.service; echo $? Anzeige einer Service Definition systemctl cat rsyslog.service --no-pager /usr/lib/systemd/system/rsyslog.service [Unit] Description=System Logging Service ;Requires=syslog.socket Wants=network.target network-online.target After=network.target network-online.target Documentation=man:rsyslogd(8) Anzeige der fehlgeschlagenen Dienste systemctl --failed UNIT LOAD ACTIVE SUB DESCRIPTION ● pctl.service loaded failed failed LSB: Start the perfd daemon LOAD = Reflects whether the unit definition was properly loaded. ACTIVE = The high-level unit activation state, i.e. generalization of…