docker镜像查找可通过Docker Hub查找,或者使用 docker search命令查找
安装mysql
1. 这里安装mysql 5.7的版本
$ docker pull mysql:5.7
2. 启动容器
$ 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=123456 \
-d mysql:5.7
-v /mydata/mysql/log:/var/log/mysql :将mysql日志目录挂载到/mydata/mysql/log目录
-v /mydata/mysql/data:/var/lib/mysql :将mysql数据目录挂载到/mydata/mysql/data目录
-v /mydata/mysql/conf:/etc/mysql :将mysql配置文件目录挂载到**/mydata/mysql/conf**目录
-e MYSQL_ROOT_PASSWORD=123456:设置ROOT用户密码
3.mysql配置文件修改
由于我们将容器的配置目录挂在到**/mydata/mysql/conf**。所以我们编辑挂载目录下的配置文件即可。
$ 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
修改后重启mysql容器即可
$ docker restart mysql
进入mysql容器
$ docker exec -it mysql /bin/bash
# 输入cat /etc/mysql/my.cnf即可看到修改成功了
对于一些用户密码权限设置的,在进入mysql容器后,进行设置即可
$ docker exec -it mysql /bin/bash
$ mysql -uroot -p
# 创建新用户
mysql> CREATE USER 'root'@'%' IDENTIFIED BY 'Hadoop3!';
# 修改用户密码
mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '111';
# 给user用户添加权限
mysql> grant all privileges on *.* to 'root'@'%';
# 刷新登录权限
mysql> flush privileges;
安装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
开启 aof 持久化
vi /mydata/redis/conf/redis.conf
# 添加如下内容
appendonly yes