任意镜像互联【mysql -php】
1.先创建mysql容器
run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql
2.通过dockerfile创建php容器 我的本地就有了
于是我的dockerfile内容为:
FROM 0145ba125a76
RUN apt-get update && apt-get install -y mysql-client
补充:由于我的网络原因我不需要使用阿里云或者163镜像
3.开始使用–link命令
docker run --name phpweb -it -P --link=4c0b677a7883:mysql e9b408f1ef4a /bin/bash
补充:有点特殊(–link = )不同其他的需要注意!!
4.通过 cat /etc/hosts查看配置信息
5.尝试通过 mysql -h mysql -droot 访问mysql容器的mysql
发现客户端和服务端加密规则不一样
6.进入mysql容器
docker exec -it 5f3f63b8a3f7 /bin/bash
7.登录mysql容器中的mysql
8.使用如下命令
select host,user,plugin from mysql.user;
9.修改策略
ALTER USER ‘root’@’%’ IDENTIFIED WITH mysql_native_password BY ‘root’;
以上注意符号 是英文的’
10.web容器再次连接mysql容器中的mysql
总结:有时候一些容器比较简单 啥都没装 比方说我这个 里面啥都没有 mysql客户端都是我自己装的 不然在web容器中执行mysql 都会说不存在