Maison >Opération et maintenance >Docker >Explorez les journaux système de Docker

Explorez les journaux système de Docker

PHPz
PHPzoriginal
2023-04-19 14:11:57868parcourir

Docker est une technologie de virtualisation légère qui peut isoler les applications dans des conteneurs indépendants et permettre aux applications de s'exécuter dans différents environnements, permettant ainsi un déploiement et une portabilité rapides des applications. Dans le cycle de vie du conteneur Docker, le journal système est un lien très important. Il peut nous aider à surveiller et à maintenir l'état du conteneur pour garantir son fonctionnement normal. Alors, qu’est-ce que le journal système de Docker ? Comment utiliser et configurer le journal système de Docker ? Cet article vous présentera les connaissances liées aux journaux système de Docker.

  1. Qu'est-ce que le journal système de Docker ?

Le journal système de Docker fait référence aux informations de journal générées pendant le processus d'exécution du conteneur, y compris la sortie standard et la sortie d'erreur standard. La sortie standard fait référence aux informations générées par le programme via des commandes telles que print() ou cout pendant le fonctionnement, tandis que la sortie d'erreur standard fait référence au message d'erreur émis par le programme lorsqu'il rencontre une erreur. Ces informations de journal sont très importantes pour la surveillance des conteneurs Docker et le dépannage des erreurs. Docker propose donc diverses méthodes pour collecter, afficher et gérer les journaux du système de conteneurs. Jetons un coup d'œil à la méthode de collecte des journaux système fournie par Docker.

  1. Méthodes de collecte des journaux système de Docker

Docker propose diverses méthodes pour collecter les informations de journal système des conteneurs, notamment les méthodes suivantes :

2.1 Utilisez la commande docker logs

commande docker logs pour afficher les normes d'un élément spécifié. Conteneur de sortie et journaux de sortie d'erreur standard, la syntaxe est la suivante :

docker logs [OPTIONS] CONTAINER

Parmi eux, OPTIONS est facultatif, vous pouvez spécifier le nombre de journaux à afficher, s'il faut suivre la sortie du journal, etc. CONTAINER spécifie l'ID ou le nom du conteneur du journal à afficher. Par exemple, pour afficher les informations du journal du conteneur avec l'ID de conteneur abc123, vous pouvez utiliser la commande suivante :

docker logs -f abc123

Cette commande suivra la sortie du journal du conteneur et affichera les nouvelles informations du journal.

2.2 Utilisez la commande docker events

La commande docker events peut afficher le journal des événements du démon Docker, y compris le démarrage et l'arrêt du conteneur. Différente de la commande docker logs, la commande docker events peut afficher les informations sur les événements de tous les conteneurs. La syntaxe est la suivante :

docker events [OPTIONS]

Parmi eux, OPTIONS est facultatif, et vous pouvez spécifier d'afficher certains types d'événements, filtrer certains événements. , etc.

2.3 Utilisez la commande docker inspect

La commande docker inspect peut afficher les informations détaillées du conteneur, y compris les paramètres réseau du conteneur, les points de montage et d'autres informations. Les informations détaillées du conteneur incluent également les informations du journal système du conteneur. Par exemple, pour afficher les détails du conteneur avec l'ID de conteneur abc123, vous pouvez utiliser la commande suivante :

docker inspect abc123
  1. Configuration des journaux système de Docker

En plus d'utiliser les outils de collecte de journaux fournis par Docker, nous pouvons également utiliser outils tiers pour collecter et gérer les journaux système des conteneurs. Par exemple, nous pouvons utiliser l'outil ELK pour collecter, stocker et analyser les informations de journal des conteneurs Docker. Voyons comment configurer la méthode de collecte des informations de journal du conteneur via le pilote de journal de Docker.

Dans Docker, vous pouvez utiliser les pilotes de journaux suivants pour la configuration des journaux :

  • json-file : le pilote de journal par défaut génère les journaux du conteneur dans des fichiers JSON.
  • syslog : afficher les journaux du conteneur vers syslog.
  • journald : sortie des journaux du conteneur vers systemd-journald.
  • gelf : Sortie des journaux du conteneur au format de journal étendu Graylog.
  • fluentd : sortie des journaux du conteneur vers Fluentd.

En plus de ces pilotes de journaux par défaut, Docker prend également en charge l'utilisation de pilotes de journaux tiers, tels que logspout, logrotate, etc. Nous pouvons utiliser le pilote de journal de Docker pour configurer l'emplacement, le format et d'autres informations du fichier journal du conteneur. Par exemple, vous pouvez utiliser la commande suivante pour utiliser le pilote json-file pour afficher les journaux du conteneur dans le répertoire /var/log/docker :

docker run --log-driver=json-file --log-opt max-size=10m --log-opt max-file=3 -d nginx

Dans la commande ci-dessus, –log-driver=json-file spécifie le pilote de journal. en tant que fichier json, –log-opt max-size=10m et –log-opt max-file=3 spécifient la taille et la quantité limite des fichiers journaux. De cette façon, lorsque le conteneur génère des journaux, les informations du journal seront affichées dans le fichier /var/log/docker/container ID-json.log.

  1. Résumé

Dans le cycle de vie du conteneur Docker, le journal système est un lien très important. Il peut nous aider à surveiller et à maintenir l'état du conteneur pour assurer le fonctionnement normal du conteneur. Docker fournit diverses façons de collecter, d'afficher et de gérer les informations des journaux système des conteneurs, notamment en utilisant des commandes telles que les journaux Docker, les événements Docker et Docker Inspect, et en utilisant des pilotes de journaux tiers pour configurer l'emplacement, le format et l'emplacement du fichier journal. d'autres informations. Nous pouvons choisir des outils de collecte de journaux et des méthodes de configuration appropriés en fonction des besoins réels pour mieux surveiller et gérer les conteneurs Docker.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn