下载 mysql 镜像

docker pull mysql:5.7

启动容器

docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7

修改配置文件

vi /mydata/mysql/conf/my.cnf
[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve

重启

docker restart mysql

进入mysql容器

docker exec -it mysql /bin/bash

查看是否成功修改

cat /etc/mysql/my.cnf

Docker安装Redis

下载 redis 镜像

docker pull redis

创建配置文件

mkdir -p /mydata/redis/conf
touch /mydata/redis/conf/redis.conf

启动容器

docker run -p 6379:6379 --name redis \
-v /mydata/redis/data:/data \
-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf

运行 redis

docker exec -it redis redis-cli

开启 aof 持久化

vi /mydata/redis/conf/redis.conf
# 添加如下内容
appendonly yes

重启 redis

docker restart redis

更多配置参考:https://raw.githubusercontent.com/antirez/redis/5.0/redis.conf

设置随Docker自启动

docker update mysql --restart=always

docker update redis --restart=always