docker中使用Mysql8+phpmyadmin

如今基本装这套都用docker了,有一些小坑在里面,简单说一下。php

运行mysql比较简单,参考mysql⭐Docker Official Images,须要注意不要忘记暴露端口给phpmyadmin用。mysql

$ docker run --name <mysql容器名> -e MYSQL_ROOT_PASSWORD=<root用户的密码> -d -P mysql:tag

直接在run时设置好密码,可是这时无法给phpmyadmin用的,必须改一下权限:sql

docker exec -it <mysql容器名> bash

进去后先登陆mysqldocker

mysql -p

输入密码以后就进入mysql控制台了,用8.0以上的方法来改变root受权使其可跨域访问:跨域

grant all privileges on *.* to 'root'@'%' with grant option;

若是还用原来5.7的那个方法会报错,因此旧博客不能用了。bash

PS: docker版本的bind已是0.0.0.0了,若是是普通版本,默认是127.0.0.1,远程访问还须要修改/etc/mysql/mysql.conf.d/mysqld.cnf中的bind。code

而后修改文件中ip

以后就能够愉快使用phpmyadmin了,官方提供的版本是phpmyadmin/phpmyadminci

运行的方法也给出了,除了HOST还要指定端口。get

docker run --name <phpmyadmin容器名> -d -e PMA_HOST=<mysql的host或ip> -e PMA_HOST=<刚才的mysql的端口> -P phpmyadmin/phpmyadmin

以后就能够根据暴露的端口访问phpmyadmin服务了。

祝愉快。

相关文章
相关标签/搜索