首先,大家需要安装完成docker,并启动。
其次使用以下脚本就可以快速完成docker下的mysql的安装了。
mysql的详细解释都在脚本中有注释
在使用脚本前需要有以下准备
1-创建外部的配置文件my.cnf(名字可以随意取,但是要跟脚本中的保持一致)
2-创建运行的脚本,使用以下命令
#创建脚本文件
touch mysql.sh
#进行权限赋值
chmod +x ./mysql.sh
3-复制以下内容到脚本文件中(vim编辑器)
4-使用./mysql.sh 命令运行脚本
5-docker ps -a 进行查看
#!/bin/bash
#Author:文
#Description: docker 安装mysql
#获取当前文件夹的路径
basepath=$(cd `dirname $0`; pwd)
#容器别名
tagname=mysql
#mysql镜像版本
name=mysql:5.7.24
#端口号
port=3308
#mysql配置文件映射地址
config=/usr/local/docker/mysql/config
configPath="/usr/local/docker/mysql/config"
#mysql数据映射地址
data=/usr/local/docker/mysql/data
dataPath="/usr/local/docker/mysql/data"
#mysql日志映射地址
log=/usr/local/docker/mysql/log
logPath="/usr/local/docker/mysql/log"
#mysql的密码
password=root
#判断文件夹是否创建
if [ ! -x "$configPath" ]; then
mkdir -p "$configPath"
#创建文件夹并拷贝配置文件到指定目录
cp $basepath/my.cnf $configPath
fi
if [ ! -x "$dataPath" ]; then
mkdir -p "$dataPath"
fi
if [ ! -x "$logPath" ]; then
mkdir -p "$logPath"
fi
#拉取镜像
echo "开始拉取指定镜像$name"
docker pull $name
if [ $? -eq 0 ] ; then
echo "镜像$name拉取成功"
else
echo "镜像$name拉取失败"
fi
docker images
echo "开始安装镜像"
#安装镜像
docker run --name $tagname -p 3308:3306 --restart=always -v $config:/etc/mysql/mysql.conf.d -v $data:/var/lib/mysql -v $log:/var/log/mysql --privileged=true -e MYSQL_ROOT_PASSWORD=$password -d $name
if [ $? -eq 0 ] ; then
echo "镜像$name安装成功"
else
echo "镜像$name安装失败"
fi
docker ps -a
echo "mysql的端口号==>$port,密码==>$password"
以下是mysql的外部引用配置文件(需要放在跟运行文件同一目录下)
[mysqld]
bind-address=0.0.0.0
wait_timeout=86400
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
[mysql]
default-character-set=utf8