Docker镜像 mysql和phpmyadmin的安装和通讯

Share on facebook
Share on google
Share on twitter
Share on linkedin

1.介于mysql的安装很容易出现各种坑,本文使用 mysql 的docker镜像

2.为了方便管理mysql数据库又不暴露mysql服务,所以使用phpmyadmin管理

pull镜像

#下载mysql镜像
docker pull mysql
#下载phpmyadmin镜像
docker pull phpmyadmin/phpmyadmin

创建网络

docker network create --driver bridge --subnet 172.22.9.0/24 --gateway 172.22.9.1 mynet

查看网络

docker network ls

出现 mynet 证明创建成功

创建Mysql容器

默认账户:root,

设置密码:Password123456.

接入网络:mynet

指定地址:172.22.9.3

镜像名称:mysql

容器名称:mysql

docker run --name mysql --network mynet --ip 172.22.9.3  -e MYSQL_ROOT_PASSWORD=Password123456. -d mysql

创建phpmyadmin容器

接入网络:mynet

指定地址: 172.22.9.4 

连接容器:mysql

连接容器后重命名:db(必要)

镜像名称:phpmyadmin/phpmyadmin

容器名称:phpmyadmin

docker run --name myadmin --network mynet --ip 172.22.9.4 -d --link mysql:db -p 8080:80 phpmyadmin/phpmyadmin

验证

在内网 浏览器中 输入:

http://{宿主机IP}:8080/

用户名:root

密码:Password123456.

连接

如果其他容器 要使用mysql

在 run 容器时候 需要 加入网络 mynet(–network mynet )

mysql的host=172.22.9.3

如果使用mysql-client连接报错:

Authentication plugin 'caching_sha2_password' cannot be loaded: /usr/lib64/mysql/plugin/caching_sha2_password.so:

解决方案:

需要登录phpmyadmn:

【修改权限】-【修改密码】-【密码加密方式】-【MySql自带身份验证】-【执行】


再次连接即可成功