#!/bin/bash
docker stop redmineMySQL

docker rm -f redmineMySQL

docker run --privileged=true \
-idt \
-p 3307:3306 \
--name redmineMySQL \
--restart=always \
-v /home/mysql/data:/var/lib/mysql \
-v /home/mysql/conf/my.cnf:/etc/mysql/my.cnf \
-e TZ='Asia/Shanghai' \
-e MYSQL_ROOT_PASSWORD=xxxxxxx  \
-e MYSQL_USER=redmine \
-e MYSQL_PASSWORD=xxxxxxx \
-e MYSQL_DATABASE=redmine_production \
mysql:5.7.27 --character-set-server=utf8 --collation-server=utf8_general_ci
sleep 3s

docker logs redmineMySQL

这里只需给已创建的redmine用户权限即可

########CREATE USER 'redmine'@'%' IDENTIFIED BY 'Wicture@2488';########
########CREATE DATABASE IF NOT EXISTS `redmine_production` DEFAULT CHARACTER SET `utf8` COLLATE `utf8_general_ci`;########

GRANT ALL PRIVILEGES ON *.* TO 'redmine'@'%';
flush privileges;

坑1:ssl error

解决办法:

将mysql的my.cnf文件映射出来,在mysqld下添加skip_ssl之后重启mysql

坑2:character

这里要指定字符集编码,不然后面创建项目会报错有多个字符集编码,因为默认使用的是latin1字符集编码