Maison > Article > Opération et maintenance > Limite de taille du journal Docker et changement de répertoire de stockage
Divers environnements du produit utilisent beaucoup de machines virtuelles CentOS. Par défaut, l'espace du répertoire racine est de 50 Go. À mesure que la durée d'utilisation devient de plus en plus longue, le l'espace va augmenter.
La méthode que j'ai toujours adoptée est d'effacer les images inutiles et les logs Docker, afin que le serveur soit toujours disponible. Ce n'est que lorsque le nettoyage est devenu inutile que j'ai pensé à trouver d'autres méthodes.
Lorsque nous ne sommes pas contraints à une situation désespérée, nous nous appuyons habituellement sur les méthodes et les outils que nous connaissons. Cela n'est peut-être pas efficace, mais cela peut résoudre le problème. pas inutilisable et nocif. Cela incitera les gens à rester dans leur zone de confort et à ne pas vouloir en sortir.
Les autres méthodes mentionnées ci-dessus sont en fait très simples et peuvent être obtenues en vérifiant les informations. Elles consistent à limiter la taille du journal Docker et à basculer le répertoire de données Docker vers un stockage externe.
1. Modifiez le fichier de configuration Docker /etc/docker/daemon.json Si le fichier n'existe pas, créez-en un nouveau :
.sudo vi /etc/docker/daemon.json# 🎜🎜#2. Ajoutez le contenu suivant au fichier pour limiter la taille d'un seul fichier journal à 100 Mo et conserver les 5 fichiers journaux les plus récents. Ici, nous utilisons les paramètres max-size et max-file pour contrôler la taille et le nombre de journaux :
{ "log-driver": "json-file", "log-opts": { "max-size": "100m", "max-file": "5" } }
sudo systemctl restart dockerChangement de répertoire de donnéesDans CentOS, la valeur par défaut de Docker répertoire Pour /var/lib/docker, vous pouvez utiliser l'option data-root dans le fichier de configuration Docker pour définir le répertoire de données Dcoker. Les étapes spécifiques sont les suivantes : 1. docker/daemon.json Ajoutez l'option data-root au fichier de configuration :
{ "log-driver": "json-file", "log-opts": { "max-size": "100m", "max-file": "5" } "data-root": "/home/docker" }
/home/docker Le répertoire est un stockage externe ou un volume avec un espace relativement grand.
sudo systemctl stop docker3. Copiez le contenu du répertoire par défaut de Docker dans le nouveau répertoire :
sudo rsync -aqxP /var/lib/docker/ /home/docker/
Un outil de synchronisation à distance des fichiers et répertoires ;# 🎜🎜 #
indique à rsync de synchroniser les fichiers et les répertoires en mode archive, où a signifie mode archive, q signifie mode silencieux (aucune sortie n'est affichée), x signifie ne pas franchir les limites du système de fichiers et P .mv /var/lib/docker /var/lib/docker.bak
5. Activer Dcoker :
sudo systemctl start docker
Dans la troisième étape ci-dessus, la commande rsync a été utilisée pour synchroniser le contenu. La signification de cette commande est d'utiliser l'outil rsync pour synchroniser. l'ordinateur local Synchronisez tous les fichiers et sous-répertoires du répertoire /var/lib/docker/ avec /home/docker/ sur un autre ordinateur local
Avant cela, utilisez cp et scp pour faire fonctionner des fichiers ou des répertoires Il y a beaucoup. Cette fois, j'ai découvert l'outil de commande rsync lorsque je cherchais des informations, j'ai donc continué à en apprendre davantage sur lui et sur cp et scp.
La différence entre rsync et cp et rsync
Méthode de copie : cp et scp copieront l'intégralité du fichier vers l'emplacement cible, tandis que rsync copiera uniquement le ceux qui doivent être mis à jour. En partie, cela améliore la vitesse et l'efficacité de la réplication. Supportabilité : rsync prend en charge davantage d'opérations, telles que la synchronisation de fichiers, la sauvegarde de fichiers, la récupération de fichiers, etc. cp et scp prennent uniquement en charge la copie de fichiers.À travers cette étude des restrictions de journalisation et du changement de répertoire, j'ai deux pensées :
2. De nombreuses compétences acquises après le travail s'acquièrent en résolvant constamment des problèmes. Cela vous rendra progressivement plus expérimenté, mais pas systématique. Même si vous vous sentez très familier avec un certain domaine, je pense que c'est nécessaire. étudiez systématiquement, vous pourrez certainement éliminer de nombreux angles morts.
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!