Maison  >  Article  >  base de données  >  Comment valider des données dans un conteneur MySQL Docker et les conserver

Comment valider des données dans un conteneur MySQL Docker et les conserver

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-10-24 09:07:29238parcourir

How to Commit Data in a MySQL Docker Container and Preserve It

Docker : validation de données dans un conteneur MySQL

Lorsque vous essayez de valider des données dans une image de conteneur MySQL, il est important de comprendre l'impact de volumes de données.

L'image officielle MySQL Docker utilise des volumes de données pour stocker ses données. Bien que cela permette la persistance des données au-delà de la durée de vie d'un conteneur, cela signifie également que les données ne sont pas incluses dans l'image validée.

Pour valider des données dans une image avec MySQL, créez une image de base personnalisée sans volumes. Par exemple, créez une nouvelle image basée sur l'image MySQL avec le Dockerfile suivant :

FROM mysql:latest
RUN rm -rf /var/lib/mysql/
CMD ["mysqld"]

Ensuite, créez l'image personnalisée :

docker build -t my-custom-mysql-image .

Avec cette image de base personnalisée, vous pouvez créez des conteneurs et importez des données comme vous le faisiez auparavant :

docker run --name my-mysql-container -e MYSQL_ROOT_PASSWORD=secret -d my-custom-mysql-image
docker exec -it my-mysql-container bash
mysql -uroot -psecret -e 'create database liferay_psat1;'
mysql -uroot -psecret liferay_psat1 < /mnt/liferay_sql_dump.sql

Maintenant, lorsque vous validez le conteneur en tant que nouvelle image :

docker commit -m "Imported liferay sql dump" my-mysql-container my-custom-mysql-image:v1

Les données importées seront incluses dans l'image validée et disponible lors du démarrage de nouveaux conteneurs avec cette image.

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