


Linux et Docker : Comment conserver et sauvegarder les données des conteneurs ?
Linux et Docker : Comment effectuer la persistance et la sauvegarde des données du conteneur ?
Avec le développement rapide du cloud computing et de la technologie des conteneurs, Docker est devenue aujourd'hui l'une des plates-formes de conteneurisation les plus populaires et les plus utilisées. Dans le processus d'utilisation de Docker pour le développement et le déploiement d'applications, la persistance et la sauvegarde des données sont une tâche très importante. Cet article explique comment effectuer la persistance et la sauvegarde des données du conteneur sous Linux et Docker, et donne des exemples de code correspondants.
- Persistance des données
Dans Docker, les données du conteneur sont stockées par défaut à l'intérieur de l'image, ce qui signifie que lorsque le conteneur est supprimé, les données seront également perdues. Afin d'assurer la persistance des données, des volumes de données peuvent être utilisés pour associer les données contenues dans le conteneur à l'hôte.
Ce qui suit est un exemple de Dockerfile utilisant un volume de données :
FROM ubuntu:latest VOLUME /data COPY myapp /data
Dans cet exemple, nous définissons d'abord un volume de données /data
, puis ajoutons le myapp
à l'intérieur du conteneur Le fichier est copié dans le volume de données. De cette façon, lorsque nous exécutons ce conteneur, nous pouvons accéder aux données du conteneur en montant un répertoire sur l'hôte dans /data
dans le conteneur. /data
,然后将容器内部的myapp
文件复制到数据卷中。这样,当我们运行这个容器时,可以通过挂载主机上的一个目录到容器中的/data
来访问容器中的数据。
使用以下命令可以运行这个容器,并进行数据持久化:
$ docker run -v /path/to/host/dir:/data myimage
在上述命令中,/path/to/host/dir
是主机上的一个目录,它将被挂载到容器中的/data
。这样,主机上的数据就会与容器中的数据进行同步,实现了数据的持久化。
- 数据备份
对于容器中的数据,我们通常还需要进行定期的备份,以防止数据的丢失。在Linux中,有多种方法可以对数据进行备份,如使用cp命令、rsync命令和tar命令等。下面是一个使用rsync命令进行备份的示例:
$ rsync -avz --delete /path/to/source/dir /path/to/backup/dir
在这个示例中,我们使用rsync命令将/path/to/source/dir
中的数据同步到/path/to/backup/dir
中。其中,-avz
选项表示进行归档模式、保留文件权限和递归备份,--delete
选项表示删除备份目录中不存在的源目录文件。
为了实现自动化的数据备份,我们可以将上述命令添加到Cron任务中。Cron是Linux中一种用于定期执行任务的服务,可以通过编辑/etc/crontab
# 每天凌晨3点进行数据备份 0 3 * * * root rsync -avz --delete /path/to/source/dir /path/to/backup/dir
/path/to/host/dir
est un répertoire sur l'hôte, qui sera monté /data chargé dans le conteneur. De cette manière, les données sur l'hôte seront synchronisées avec les données du conteneur, assurant ainsi la persistance des données.
- Sauvegarde des données
- rrreee Dans cet exemple, nous utilisons la commande rsync pour synchroniser les données de
- Afin de réaliser une sauvegarde automatisée des données, nous pouvons ajouter la commande ci-dessus à la tâche Cron. Cron est un service sous Linux utilisé pour effectuer des tâches régulièrement. Vous pouvez ajouter des déclencheurs planifiés pour les tâches de sauvegarde en modifiant le fichier
/etc/crontab
. Voici un exemple simple :
- Pour les données contenues dans le conteneur, nous devons généralement effectuer des sauvegardes régulières pour éviter toute perte de données. Sous Linux, il existe de nombreuses façons de sauvegarder des données, par exemple en utilisant la commande cp, la commande rsync et la commande tar. Vous trouverez ci-dessous un exemple d'utilisation de la commande rsync pour la sauvegarde :
/path/to/source/dir
vers /path /vers/sauvegarde/rép
. Parmi elles, l'option -avz
signifie exécuter le mode archive, conserver les autorisations de fichiers et la sauvegarde récursive, et l'option --delete
signifie supprimer les fichiers du répertoire source qui n'existent pas dans le répertoire de sauvegarde. 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!

Outils d'IA chauds

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

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

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

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

L'article explique comment utiliser des expressions régulières (regex) dans Linux pour la correspondance de motifs, la recherche de fichiers et la manipulation du texte, la syntaxe détaillant, les commandes et les outils comme Grep, SED et AWK.

L'article discute de l'utilisation de TOP, HTOP et VMSTAT pour surveiller les performances du système Linux, détaillant leurs fonctionnalités uniques et leurs options de personnalisation pour une gestion efficace du système.

L'article fournit un guide sur la configuration de l'authentification à deux facteurs (2FA) pour SSH sur Linux à l'aide de Google Authenticator, détaillant l'installation, la configuration et les étapes de dépannage. Il met en évidence les avantages de sécurité du 2FA, comme SEC amélioré

L'article discute de la gestion des packages de logiciels dans Linux à l'aide d'APT, YUM et DNF, couvrant l'installation, les mises à jour et les déménagements. Il compare leurs fonctionnalités et leur pertinence pour différentes distributions.

L'article explique comment gérer les privilèges sudo à Linux, y compris l'octroi, la révocation et les meilleures pratiques de sécurité. L'accent est mis sur l'édition / etc.

Les débutants Linux doivent maîtriser les opérations de base telles que la gestion des fichiers, la gestion des utilisateurs et la configuration du réseau. 1) Gestion des fichiers: utilisez les commandes MKDIR, Touch, LS, RM, MV et CP. 2) Gestion des utilisateurs: utilisez des commandes UserAdd, Passwd, UserDel et UserMod. 3) Configuration du réseau: utilisez les commandes IFConfig, Echo et UFW. Ces opérations sont à la base de la gestion du système Linux, et les maîtriser peut gérer efficacement le système.

Les cinq piliers du système Linux sont: 1. Kernel, 2. Bibliothèque système, 3. Shell, 4. Système de fichiers, 5. Outils système. Le noyau gère les ressources matérielles et fournit des services de base; La bibliothèque système fournit des fonctions précompilées pour les applications; Le shell est l'interface permettant aux utilisateurs d'interagir avec le système; Le système de fichiers organise et stocke les données; et les outils système sont utilisés pour la gestion et la maintenance du système.

Dans les systèmes Linux, le mode de maintenance peut être entré en appuyant sur une touche spécifique au démarrage ou en utilisant une commande telle que "Sudosystemctlrescue". Le mode de maintenance permet aux administrateurs d'effectuer la maintenance du système et le dépannage sans interférence, tels que la réparation des systèmes de fichiers, la réinitialisation des mots de passe, le correctif des vulnérabilités de sécurité, etc.
