> 文章列表 > Linux下Docker安装mysql-超详细步骤

Linux下Docker安装mysql-超详细步骤

Linux下Docker安装mysql-超详细步骤

  1. 安装Docker Engine

官方参考文档:https://docs.docker.com/engine/install/centos/

  • 若之前有安装docker,需要先卸载之前的docker

sudo yum remove docker \\docker-client \\docker-client-latest \\docker-common \\docker-latest \\docker-latest-logrotate \\docker-logrotate \\docker-engine
  • 安装必要的依赖

sudo yum install -y yum-utils
  • 设置docker仓库

sudo yum-config-manager \\  --add-repo \\  https://download.docker.com/linux/centos/docker-ce.repo
  • 查看可以安装的docker版本

yum list docker-ce --showduplicates | sort -r
  • 安装最新的或者指定的docker版本

最新的:sudo yum install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin指定的:sudo yum install -y docker-ce-20.10.7 docker-ce-cli-20.10.7 containerd.io docker-compose-plugin
Linux下Docker安装mysql-超详细步骤
  • 启动docker并设置为开机启动

sudo systemctl start docker && sudo systemctl enable docker
  • 测试docker是否安装成功

sudo docker run hello-world
Linux下Docker安装mysql-超详细步骤

出现 Hello from Docker! 表示docker安装成功

  • 配置docker的镜像加速器

先进入到/etc/docker, 找到daemon.json文件,打开文件配置镜像加速器地址。(没有的话需要自己创建目录和json文件。

Linux下Docker安装mysql-超详细步骤
{
"registry-mirrors":["https://rsbud4vc.mirror.aliyuncs.com","https://docker.mirrors.ustc.edu.cn","http://hub-mirror.c.163.com","http://qtid6917.mirror.aliyuncs.com","https://rncxm540.mirror.aliyuncs.com","https://e9yneuy4.mirror.aliyuncs.com","https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors"]
}

  1. 下载image镜像并创建docker容器实例

参考文档:https://www.docker.com/

参考文档:https://hub.docker.com/

  • 下载mysql的image镜像

docker pull mysql:5.7
  • 查看下载的镜像

docker images
Linux下Docker安装mysql-超详细步骤
  • 根据镜像创建docker容器

docker run -d -p 3306:3306 --privileged=true -v /usr/local/mysql/log:/var/log/mysql -v /usr/local/mysql/data:/var/lib/mysql -v /usr/local/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=abc123456 --name mysql mysql:5.7
  • 查看创建的docker容器实例

docker ps
Linux下Docker安装mysql-超详细步骤

出现如上的容器实例ID和容器实例名mysql的信息表示 docker启动mysql容器成功!

  1. 进入到docker容器实例修改访问权限

  • 进入到docker容器实例中

docker exec -it mysql /bin/bash
Linux下Docker安装mysql-超详细步骤
  • mysql5.7版本支持远程Ip访问需要修改访问授权

mysql> grant all privileges on *.* to root@"%" identified by "abc123456" with grant option;
  • 刷新权限集

mysql> flush privileges;
  • 修改完成后输入exit退出容器实例,返回到宿主机上

Linux下Docker安装mysql-超详细步骤
  1. 进入docker修改my.conf配置

  • 进入到/etc/mysql/conf.d 下修改 my.conf文件的配置

Linux下Docker安装mysql-超详细步骤
  • 或者修改宿主机上的配置文件可以映射修改容器内的配置(/usr/local/mysql/conf/my.conf)

Linux下Docker安装mysql-超详细步骤
[client]
default_character_set=utf8
[mysqld]
collation_server=utf8_general_ci
character_set_server=utf8[mysqld]
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
  1. 打开防火墙端口

  1. 远程连接测试