Szukałem dokładnie tego samego, a teraz jest na to lepszy sposób.
docker mysql pisze:
$ docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
W docker-compose świecie, można by przekazać te argumenty za pomocą "polecenia" sekcja serwisu:
command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
W moim przypadku użycia chciałem po prostu włączyć logi i określić ścieżkę do pliku dziennika :
Polecenie command: mysqld --general-log=1 --general-log-file=/var/log/mysql/general-log.log
Z odpowiednimi objętościami (np. - ./logs/mysql.log:/var/log/mysql/general-log.log
), łatwo do nich dotrzeć.
Jest to całkiem proste i pozwala uniknąć radzenia sobie z lokalną konfiguracją. Będzie działać z dowolnymi obrazami Docker MySQL
i zachowa my.cnf
w postaci dostarczonej przez obraz.