Jeg ledte efter nøjagtig det samme, og nu er der en bedre måde at gøre det på.
docker mysql skriver:
$ docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
I en docker-compose verden, kunne man sende disse argumenter gennem "kommandoen" sektion af tjenesten:
command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
I mit tilfælde ville jeg bare slå logfilerne til og angive stien til logfilen :
command: mysqld --general-log=1 --general-log-file=/var/log/mysql/general-log.log
Med passende mængder (f.eks. - ./logs/mysql.log:/var/log/mysql/general-log.log
), bliver det nemt at nå dem.
Dette er ret ligetil og undgå at håndtere en lokal konfiguration. Det fungerer med alle MySQL Docker-billeder
og vil beholde my.cnf
som afsendt af billedet.