使用docker cp命令把mysql镜像的配置文件复制到宿主机的/home文件夹
docker cp mysql:/etc/mysql/conf.d/docker.cnf /home
修改docker.cnf配置文件末尾追加skip-grant-tables属性绕过密码验证(使用echo、vim命令或xftp工具)
echo "skip-grant-tables" >> /home/docker.cnf
修改完之后使用docker cp命令把镜像的配置文件覆盖掉
docker cp /home/docker.cnf mysql:/etc/mysql/conf.d/docker.cnf
重启mysql容器
docker restart mysql
进入容器
docker exec -it mysql bash
随便用个mysql命令
mysql -v
选择数据库
use mysql
修改root用户的密码为admin
update user set authentication_string=password('admin') where user='root';
退出mysql和docker容器
exit
注:修改宿主机的docker.cnf把绕过密码验证的skip-grant-tables属性删掉或使用#号注释掉
然后再次覆盖一下mysql容器的配置文件docker.cnf
docker cp /home/docker.cnf mysql:/etc/mysql/conf.d/docker.cnf
重启mysql镜像即可
docker restart mysql