Чтобы исправить my.cnf, вы можете использовать docker container cp
. Работает с остановленными контейнерами.
Попробуйте
docker container cp [container]:/etc/mysql/my.cnf container-my.cnf
, затем отредактируйте container-my.cnf и скопируйте обратно:
docker container cp container-my.cnf [container]:/etc/mysql/my.cnf
Чтобы использовать существующие данные MySQL с новым контейнером:
docker container inspect -f '{{.Mounts}}' [container]
дает вам имя тома (клавиша volume
), где находятся данные. Затем запустите новый контейнер MySQL и подключите том под /var/lib/mysql
:
docker container run -d -v [volume_name]:/var/lib/mysql [image]
После этого вы можете удалить старый контейнер (на самом деле вы можете удалить его перед созданием нового)