2015-10-14 2 views
0

Je veux des données de lecture/écriture mysql sur mon image RBD. J'utilise rbd-docker-plugin pour monter RBD en tirer docker de https://hub.docker.com/_/mysql/Comment monter l'image RBD (ceph) dans le répertoire par défaut de mysql docker

D'abord, j'essaie

docker run -it --volume-driver=rbd --volume foo:/mnt/foo ceph/base bash

et je touche le fichier "aa" à l'intérieur/mnt/foo dans docker puis j'arrêter docker et quand je monte foo dans un autre docker "aa" fichier existe encore


Puis-je ajouter mon code dans ce Docker file

RUN mkdir -p /mnt/foo/mysql 
RUN sed -i -e 's/\/var\/lib\/mysql/\/mnt\/foo\/mysql/g' /etc/mysql/my.cnf 
VOLUME /mnt/foo/mysql 

et construire, exécuter docker de cette nouvelle Dockerfile

docker run -it --volume-driver=rbd --volume storage2/foo:/mnt/foo -e MYSQL_ROOT_PASSWORD=password [image_id] 

quand j'exec conteneur je peux utiliser mysql et je vois des données de MySQL (et le fichier "aa") dans/mnt/foo/mysql, mais quand je me arrête docker et le mont foo dans un autre docker je ne vois rien mysql (mais je vois encore le fichier « aa »)


Enfin j'essaie

docker run --name some-mysql --volume-driver=rbd --volume foo:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw mysql 

mais l'erreur

[ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.user' doesn't exist

Répondre