容器部署mysql并与项目连接
容器部署mysql并与项目连接
容器部署mysql并且完成和项目连接
首先方法有很多种,我的虚拟机系统是ubuntu,实现方式是将mysql单独部署,然后使用dockerfile创建项目镜像,基础镜像为mysql镜像。
一.部署mysql
1.拉取mysql镜像文件
docker pull mysql
第一下载的时候特别慢,建议使用镜像加速器。
使用加速器方法:
点击进入阿里云官网
https://cr.console.aliyun.com
没有注册的需要注册一下,不需要绑定什么,直接注册就可以了,有账号的直接登录就好。搜索容器镜像服务
创建镜像仓库
点击镜像加速器
在终端输入,编辑配置文件
vim /etc/docker/daemon.json
将红色框内容复制。保存到daemon.json文件内。
切记,重启加载文件和重启容器
sudo systemctl daemon-reload//重新加载
sudo systemctl restart docker//重启
之后输入拉去mysql镜像命令
docker pull mysql
2.查看镜像并创建mysql容器
docker images
docker run -di --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
-p 代表端口映射,格式为 宿主机映射端口:容器运行端口
-e 代表添加环境变量 MYSQL_ROOT_PASSWORD是root用户的登陆密码
3.进入容器
进入指定的容器 docker exec -it 要进入的容器ID /bin/bash
4.登录mysql
mysql -u root -p
5.修改root
进行授权远程连接(注意mysql 8.0跟之前的授权方式不同),注意自己的mysql版本
授权
grant all privileges on . to ‘root’@’%’ ;
刷新权限
flush privileges;
此时,还不能远程访问,因为Navicat只支持旧版本的加密,需要更改mysql的加密规则.
6.更改加密规则
ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘密码’ PASSWORD EXPIRE NEVER;
7.修改root密码
ALTER USER ‘root’&#