Maison Opération et maintenance exploitation et maintenance Linux Linux et Docker : Comment effectuer le stockage persistant et la gestion des données des conteneurs ?

Linux et Docker : Comment effectuer le stockage persistant et la gestion des données des conteneurs ?

Jul 29, 2023 am 11:49 AM
docker 数据管理 持久化存储

Linux et Docker : Comment effectuer le stockage persistant et la gestion des données des conteneurs ?

Dans l'application de la technologie de conteneurisation, le stockage persistant et la gestion des données des conteneurs constituent un élément très important. Cet article explique comment implémenter le stockage persistant de conteneurs sous Linux et Docker et fournit des exemples de code correspondants.

1. Stockage persistant des conteneurs dans Docker

Dans Docker, les conteneurs sont créés via des images et les images elles-mêmes sont en lecture seule. Par conséquent, lorsque le conteneur est supprimé, les données qu’il contient seront également perdues. Afin d'implémenter le stockage persistant des conteneurs, nous pouvons utiliser les méthodes suivantes.

  1. Utilisation du volume

Le volume de données est l'une des méthodes de stockage persistant les plus couramment utilisées dans Docker. En créant un volume de données et en le montant sur le chemin spécifié du conteneur, nous pouvons réaliser un stockage persistant des données du conteneur.

Tout d'abord, nous créons un volume de données :

$ docker volume create myvolume
Copier après la connexion

Ensuite, nous pouvons monter le volume de données dans le conteneur via la commande docker run, comme indiqué ci-dessous : docker run命令将数据卷挂载到容器中,如下所示:

$ docker run -v myvolume:/data myimage
Copier après la connexion

这样,容器中的/data路径就会被映射到名为myvolume的数据卷上。当容器被删除时,该数据卷并不会被自动删除,数据将会保留下来。

  1. 使用绑定挂载(Bind Mount)

绑定挂载是指将主机上的一个目录挂载到容器中的指定路径上,从而实现容器数据的持久化存储。

我们可以通过docker run命令来进行绑定挂载,如下所示:

$ docker run -v /host/path:/container/path myimage
Copier après la connexion

这样,主机上的/host/path目录就会被映射到容器中的/container/path路径上。当容器被删除时,主机上的数据将会保留下来。

二、Linux中的容器持久化存储

除了在Docker中进行容器的持久化存储外,我们还可以通过Linux的底层技术来实现容器的数据管理。

  1. 使用共享文件系统

Linux中可以通过使用共享文件系统来实现容器的持久化存储。我们可以在主机上创建一个文件系统,并将其挂载到容器中,从而实现容器数据的持久化存储。

首先,我们需要在主机上创建一个文件系统,例如使用ext4文件系统,可以使用以下命令:

$ mkfs.ext4 /dev/sdb1
Copier après la connexion

接着,我们可以通过mount命令将该文件系统挂载到容器中的指定路径:

$ mount /dev/sdb1 /container/path
Copier après la connexion

这样,容器中的/container/path路径就会被挂载为共享文件系统,当容器被删除时,数据将会保留下来。

  1. 使用存储卷管理器(Storage Volume Manager)

存储卷管理器是Linux中的一个高级特性,可以实现数据的快照、克隆、迁移等功能。我们可以使用存储卷管理器来实现容器的数据管理。

首先,我们需要安装存储卷管理器的软件包,例如LVM(Logical Volume Manager):

$ apt-get install lvm2
Copier après la connexion

接着,我们可以使用lvcreate命令创建一个逻辑卷(Logical Volume):

$ lvcreate -L 1G -n myvolume myvg
Copier après la connexion

这样,我们就创建了一个大小为1GB的逻辑卷,并将其命名为myvolume

接下来,我们可以使用mkfs命令在逻辑卷上创建一个文件系统:

$ mkfs.ext4 /dev/myvg/myvolume
Copier après la connexion

最后,我们可以通过mount命令将逻辑卷挂载到容器中的指定路径:

$ mount /dev/myvg/myvolume /container/path
Copier après la connexion

这样,容器中的/container/pathrrreee

De cette façon, /data sera mappé au volume de données nommé myvolume. Lorsque le conteneur est supprimé, le volume de données ne sera pas automatiquement supprimé et les données seront conservées.

    Utiliser Bind Mount

    Bind Mount fait référence au montage d'un répertoire sur l'hôte sur un chemin spécifié dans le conteneur pour assurer la persistance du stockage des données du conteneur.

    Nous pouvons lier le montage via la commande docker run, comme indiqué ci-dessous :
  • rrreee
  • De cette façon, le répertoire /host/path sur l'hôte sera mappé vers le chemin /container/path dans le conteneur. Lorsque le conteneur est supprimé, les données sur l'hôte restent.
  • 2. Stockage persistant des conteneurs sous Linux
🎜En plus du stockage persistant des conteneurs dans Docker, nous pouvons également implémenter la gestion des données des conteneurs via la technologie sous-jacente de Linux. 🎜🎜🎜Utilisation d'un système de fichiers partagé🎜🎜🎜Sous Linux, le stockage persistant des conteneurs peut être réalisé en utilisant un système de fichiers partagé. Nous pouvons créer un système de fichiers sur l'hôte et le monter dans le conteneur pour obtenir un stockage persistant des données du conteneur. 🎜🎜Tout d'abord, nous devons créer un système de fichiers sur l'hôte, par exemple en utilisant le système de fichiers ext4, vous pouvez utiliser la commande suivante : 🎜rrreee🎜Ensuite, nous pouvons monter le système de fichiers sur le conteneur via le montage Commande Le chemin spécifié dans : 🎜rrreee🎜De cette façon, le chemin /container/path dans le conteneur sera monté en tant que système de fichiers partagé. Lorsque le conteneur est supprimé, les données. sera retenu. 🎜
    🎜Utiliser Storage Volume Manager 🎜🎜🎜Storage Volume Manager est une fonctionnalité avancée de Linux qui peut réaliser des instantanés de données, le clonage, la migration et d'autres fonctions. Nous pouvons utiliser des gestionnaires de volumes de stockage pour mettre en œuvre la gestion des données des conteneurs. 🎜🎜Tout d'abord, nous devons installer le progiciel de gestion de volume de stockage, tel que LVM (Logical Volume Manager) :🎜rrreee🎜Ensuite, nous pouvons utiliser la commande lvcreate pour créer un volume logique (Logical Volume ):🎜 rrreee🎜De cette façon, nous avons créé un volume logique d'une taille de 1 Go et l'avons nommé monvolume. 🎜🎜Ensuite, nous pouvons créer un système de fichiers sur le volume logique à l'aide de la commande mkfs : 🎜rrreee🎜Enfin, nous pouvons monter le volume logique sur le conteneur via le mount command Le chemin spécifié dans : 🎜rrreee🎜De cette façon, le chemin /container/path dans le conteneur sera monté en tant que volume logique. Lorsque le conteneur est supprimé, les données seront conservées. 🎜🎜En résumé, que ce soit sous Docker ou Linux, nous pouvons implémenter le stockage persistant et la gestion des données des conteneurs via différentes méthodes. En choisissant raisonnablement la bonne méthode, nous pouvons mieux gérer et conserver les données dans le conteneur. 🎜🎜J'espère que cet article vous aidera à comprendre et à utiliser le stockage persistant et la gestion des données des conteneurs ! 🎜🎜Références : 🎜🎜🎜Documentation Docker : https://docs.docker.com/storage/🎜🎜Documentation Linux : https://www.kernel.org/doc/html/latest/admin-guide/devices/ lvm .html🎜🎜

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 de ce site Web
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Commandes de chat et comment les utiliser
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment changer la source d'image Docker en Chine Comment changer la source d'image Docker en Chine Apr 15, 2025 am 11:30 AM

Vous pouvez passer à la source de miroir domestique. Les étapes sont les suivantes: 1. Modifiez le fichier de configuration /etc/docker/daemon.json et ajoutez l'adresse source miroir; 2. Après enregistrer et sortir, redémarrez le service Docker Sudo Systemctl Docker pour améliorer la vitesse et la stabilité du téléchargement d'image.

Comment créer un miroir dans Docker Comment créer un miroir dans Docker Apr 15, 2025 am 11:27 AM

Étapes pour créer une image docker: écrivez un dockerfile qui contient les instructions de construction. Créez l'image dans le terminal, en utilisant la commande docker build. Marquez l'image et attribuez des noms et des balises à l'aide de la commande docker tag.

Comment lire la version docker Comment lire la version docker Apr 15, 2025 am 11:51 AM

Pour obtenir la version Docker, vous pouvez effectuer les étapes suivantes: exécutez la commande docker "docker --version" pour afficher les versions client et serveur. Pour Mac ou Windows, vous pouvez également afficher les informations de version via l'onglet Version de la GUI de bureau Docker ou du menu de bureau à propos de Docker.

Comment utiliser Docker Desktop Comment utiliser Docker Desktop Apr 15, 2025 am 11:45 AM

Comment utiliser Docker Desktop? Docker Desktop est un outil pour exécuter des conteneurs Docker sur les machines locales. Les étapes à utiliser incluent: 1. Installer Docker Desktop; 2. Démarrer Docker Desktop; 3. Créer une image Docker (à l'aide de DockerFile); 4. Build Docker Image (en utilisant Docker Build); 5. Exécuter Docker Container (à l'aide de Docker Run).

Comment mettre à jour l'image de Docker Comment mettre à jour l'image de Docker Apr 15, 2025 pm 12:03 PM

Les étapes pour mettre à jour une image Docker sont les suivantes: Tirez la dernière étiquette d'image Nouvelle image Supprimer l'ancienne image pour une balise spécifique (facultative) Redémarrez le conteneur (si nécessaire)

Comment afficher les journaux de Docker Comment afficher les journaux de Docker Apr 15, 2025 pm 12:24 PM

Les méthodes pour afficher les journaux Docker incluent: à l'aide de la commande docker logs, par exemple: docker logs contener_name Utilisez la commande docker exec pour exécuter / bin / sh et afficher le fichier journal, par exemple: docker exec -it contener_name / bin / sh; Cat /var/log/continer_name.log Utilisez la commande docker-compose JORS de Docker Compose, par exemple: docker-compose -f docker-com

Comment enregistrer l'image docker Comment enregistrer l'image docker Apr 15, 2025 am 11:54 AM

Pour enregistrer l'image dans Docker, vous pouvez utiliser la commande docker commit pour créer une nouvelle image, contenant l'état actuel du conteneur spécifié, Syntaxe: Docker Commit [Options] Nom d'image de l'ID de conteneur. Pour enregistrer l'image dans le référentiel, vous pouvez utiliser la commande docker push, Syntax: Docker Push Image Name [: Tag]. Pour importer des images enregistrées, vous pouvez utiliser la commande docker pull, syntaxe: docker pull name [: tag].

Comment exécuter la commande docker Comment exécuter la commande docker Apr 15, 2025 am 11:24 AM

Comment exécuter les commandes Docker? Installez Docker et démarrez le démon. Commandes docker communes: Docker Images: Afficher l'image docker PS: afficher le conteneur Docker Exécuter: Exécuter le conteneur Docker Stop: Stop Container Docker RM: Delete Container Interagissez avec Container à l'aide de Docker Commande: Docker Exec: Exécuter Commande Docker Docker: Attacher les journaux Docker Console: Afficher le journal Dock

See all articles