[LINUX] So löschen Sie ein Protokoll mit Docker, nicht um ein Protokoll zu sammeln

Überblick

Hallo, ich wurde in die Zähne gelegt (@haniokasai). Ich hatte keinen Speicherplatz mehr auf meinem Server und wollte das Docker-Protokoll entfernen. Ich habe untersucht, wie Protokolle gelöscht / nicht gesammelt werden können.

Umgebung

Vorhandenes Protokoll löschen

Löschen Sie das Protokoll eines bestimmten Containers

Geben Sie den Containernamen (ID) ein und rufen Sie den Protokollpfad ab. Wenn Sie nichts hineingießen, verschwindet das Protokoll.

echo "" > $(docker inspect --format='{{.LogPath}}'Containername oder Container-ID)

Löschen Sie alle Containerprotokolle

Drehen Sie den Containernamen (ID) mit für.

#Bestätigung des Löschziels
for CONTID in $(docker ps -qa); do echo $(docker inspect --format='{{.LogPath}}' $CONTID ); done
#Tatsächliche Löschung
for CONTID in $(docker ps -qa); do echo "" > $(docker inspect --format='{{.LogPath}}' $CONTID ); done

Gelegentlich wird eine leere Container-ID eingegeben

bash: $(docker inspect --format='{{.LogPath}}' $CONTID ): ambiguous redirect

Es gibt jedoch kein Problem, es zu ignorieren (es gibt keinen Grund, die Bedingungen zu teilen).

So sammeln Sie keine Protokolle

So vermeiden Sie die Anmeldung in einem ** neuen Container **:

Bearbeiten Sie zunächst den Dienst.

vi /lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --log-opt max-size=10m --log-opt max-file=1
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
BindsTo=containerd.service
After=network-online.target firewalld.service containerd.service
Wants=network-online.target
Requires=docker.socket

[Service]
Type=notify
# the default is not to use systemd for cgroups because the delegate issues still
# exists and systemd currently does not support the cgroup feature set required
# for containers run by docker
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --log-opt max-size=10m --log-opt max-file=1
ExecReload=/bin/kill -s HUP $MAINPID
(
systemctl daemon-reload
systemctl reload docker

Ref https://stackoverflow.com/questions/42510002/how-to-clear-the-logs-properly-for-a-docker-container https://www.unix.com/shell-programming-and-scripting/173276-how-loop-through-space-separated-values.html

Recommended Posts

So löschen Sie ein Protokoll mit Docker, nicht um ein Protokoll zu sammeln
Wie lösche ich mit SQLAlchemy?
So löschen Sie einen Docker-Container
So melden Sie sich bei Docker + NGINX an
So installieren Sie Python3 mit Docker Centos
So löschen Sie vergangene Tweets mit Tweepy selektiv
So löschen Sie die angegebene Zeichenfolge mit dem Befehl sed! !! !!
Problemumgehung für Djangos Vorlage existiert nicht
Ausgabeprotokoll an die Konsole mit Flask + Nginx auf Docker
Freigeben von Ordnern für Docker und Windows mit Tensorflow
Wie aktualisiere ich mit SQLAlchemy?
Wie man mit Theano besetzt
Wie mit SQLAlchemy ändern?
So trennen Sie Zeichenfolgen mit ','
Wie man RDP auf Fedora31 macht
So laden Sie keine Bilder, wenn Sie PhantomJS mit Selen verwenden
So melden Sie sich mit Python bei AtCoder an und senden automatisch
So brechen Sie RT mit tweepy ab
Python: So verwenden Sie Async mit
So sammeln Sie Bilder in Python
So verwenden Sie virtualenv mit PowerShell
So installieren Sie Python-Pip mit Ubuntu20.04LTS
Umgang mit unausgeglichenen Daten
So erstellen / löschen Sie symbolische Links
Wie fange ich mit Scrapy an?
Erste Schritte mit Python
Umgang mit dem DistributionNotFound-Fehler
Wie fange ich mit Django an?
Aufblasen von Daten (Datenerweiterung) mit PyTorch
So schreiben Sie ein Docker-Basis-Image
So berechnen Sie das Datum mit Python
So installieren Sie den MySQL-Connector mit pip3
So verbinden Sie INNER mit SQL Alchemy
So installieren Sie Anaconda mit pyenv
Sammeln von Daten zum maschinellen Lernen
So verwenden Sie das Jupyter-Notebook, ohne Ihre Umgebung mit Docker zu verschmutzen
So führen Sie eine arithmetische Verarbeitung mit der Django-Vorlage durch
[Blender] So legen Sie shape_key mit dem Skript fest
Wie man mit matplotlib mehrere Figuren betitelt
So sammeln Sie Twitter-Daten ohne Programmierung
So fügen Sie ein Paket mit PyCharm hinzu
So erstellen Sie eine NVIDIA Docker-Umgebung
So löschen Sie abgelaufene Sitzungen in Django
So installieren Sie DLIB mit aktiviertem 2020 / CUDA
Überprüfen Sie, wie Docker mit bpftrace funktioniert
Verwendung von ManyToManyField mit Djangos Admin
Verwendung von OpenVPN mit Ubuntu 18.04.3 LTS
Verwendung von Cmder mit PyCharm (Windows)
Python-Protokoll mit GAE an die Konsole ausgeben
So verhindern Sie Paketaktualisierungen mit apt
Stellen Sie mit Python in Docker eine Verbindung zu MySQL her
So arbeiten Sie mit BigQuery in Python
Wie man Ass / Alembic mit HtoA benutzt
Umgang mit Enum-Kompatibilitätsfehlern
Verwendung von Japanisch mit NLTK-Plot
Wie man einen Taschentest mit Python macht
So suchen Sie in Google Colaboratory nach Google Drive