2016-12-05 2 views
0

J'ai créé récipient docker avec Percona exécutant cette commande:Comment ajouter un fichier my.cnf externe au serveur Percona dans Docker?

docker run -v <path-to-files-on-host-machine>:/etc/mysql/conf.d 
--name percona -p 6604:3306 -e MYSQL_ROOT_PASSWORD=12345 -d percona/percona-server:latest \ 
    --innodb_data_file_path=ibdata1:10M:autoextend:max:1G --sql_mode='' --character-set-server=utf8 --collation-server=utf8_general_ci; 

Selon documentation sur DockerHub je monter répertoire avec my.cnf dans ma machine hôte /etc/mysql/conf.d dans le récipient Docker.

Mais quand je démarre mon conteneur Percona ne lit pas les paramètres de mon my.cnf personnalisé. En outre, j'ai essayé de créer my.cnf avec des erreurs de crash Percona au démarrage. Mais pas d'effet.

Comment puis-je attacher le my.cnf personnalisé au conteneur Percona Docker?

+0

courez-vous avec SELinux activé? – user3012759

+0

Je ne sais pas. Mais j'ai essayé sur différents systèmes hôtes: Windows 10 et Ubuntu 14.04 –

+0

ok, donc exec dans le conteneur et vérifiez si vous êtes les fichiers sont où vous attendez qu'ils soient – user3012759

Répondre

0

J'ai résolu mon problème de cette façon:

  • conteneur de démarrage avec joint STDIN: docker start -i percona
  • il a commis une erreur en sortie: Attention: World-writable config file '/etc/mysql/conf.d/my.cnf' is ignored

Alors my.cnf avait mal les autorisations. Je l'ai résolu de cette façon: chmod 755 /etc/mysql/conf.d/my.cnf