मैं ठीक उसी चीज़ की तलाश में था, और अब, इसे करने का एक बेहतर तरीका है।
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 images
के साथ काम करेगा। और my.cnf
रखेंगे जैसा कि चित्र द्वारा भेज दिया गया है।