Търсих точно същото нещо и сега има по-добър начин да го направя.
docker mysql пише:
$ docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
В docker-compose свят, човек може да предаде тези аргументи през "command" раздел на услугата:
command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
В моя случай на употреба просто исках да включа регистрационните файлове и да посоча пътя до лог файла:
command: mysqld --general-log=1 --general-log-file=/var/log/mysql/general-log.log
С подходящите обеми (напр. - ./logs/mysql.log:/var/log/mysql/general-log.log
), става лесно да се достигне до тях.
Това е доста просто и избягвайте работа с локална конфигурация. Той ще работи с всякакви изображения на MySQL Docker
и ще запази my.cnf
както е изпратено от изображението.