docker 安装mysql
docker 安装mysql
拉取mysql
拉取最新版本的Mysql
docker pull mysql
指定mysql版本拉取
docker pull mysql:5.7.38
这个mysql:5.7.38代表的时候拉取mysql5.7.38这个版本的数据库
具体可以在dockerhub上寻找你想要的版本https://hub.docker.com/_/mysql?tab=tags
查看拉取的镜像
docker images
# 输出
zhangjianwei@zhangjianweideMacBook-Pro ~ % docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
mysql latest 64e1d555ec03 6 days ago 482MB
启动运行
docker run -p 3307:3306 --name mysql -v /Users/zhangjianwei/docker/mysql/mysql1/conf:/etc/mysql/conf.d -v /Users/zhangjianwei/docker/mysql/mysql1/logs:/logs -v /Users/zhangjianwei/docker/mysql/mysql1/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql
- -p 3307:3306 端口映射,3307为本机端口,3306为容器内的端口,相当于访问本地3307端口就直接访问到了该容器里的3306端口
- –name 给这个运行的镜像起个名字
- -v 挂在数据,本机路径:镜像路径
- /Users/zhangjianwei/docker/mysql/mysql1/conf:/etc/mysql/conf.d 挂载配置文件
- /Users/zhangjianwei/docker/mysql/mysql1/logs:/logs 挂载日志文件
- /Users/zhangjianwei/docker/mysql/mysql1/data:/var/lib/mysql 挂载数据文件
- -e 可以简单理解为docker环境配置,类似于env配置
- MYSQL_ROOT_PASSWORD=123456 设置root帐号的密码
- -d 后台运行
查看运行的容器
docker ps
# 输出
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
6324587475fd mysql "docker-entrypoint.s…" 11 minutes ago Up 11 minutes 33060/tcp, 0.0.0.0:3307->3306/tcp, :::3307->3306/tcp mysql
进入容器
docker exec -it mysql /bin/bash
连接mysql
mysql -u root -p123456