1. mysql
1.1 安装
获取镜像
docker pull mysql:8.0.30
创建文件挂载目录

创建容器并运行
docker run -p 3306:3306 --name mysql8 \
-v /home/docker/mysql8/log:/var/log/mysql \
-v /home/docker/mysql8/data:/var/lib/mysql \
-v /home/docker/mysql8/mysql-files:/var/lib/mysql-files \
-e MYSQL_ROOT_PASSWORD=Abc1234% \
-d mysql:8.0.30 \
--character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci

//旧,运行有问题
docker run -p 3306:3306 --name mysql8 \
-v /home/docker/mysql8/log:/var/log/mysql \
-v /home/docker/mysql8/data:/var/lib/mysql \
-v /home/docker/mysql8/conf:/etc/mysql \
-v /home/docker/mysql8/mysql-files:/var/lib/mysql-files \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:8.0.30 \
--character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
1.2 配置
开启自重启
docker update mysql8 --restart
进入容器内部
docker exec -it mysql8 bash

mysql开启远程链接
use mysql;
update user set host="%" where user="root";
//刷新权限
flush privileges;


1.3 问题
启动不起来

查看容器日志
docker logs mysql3306

mysqld: Can't read dir of '/etc/mysql/conf.d/'
文件挂载时/etc/mysql/conf.d/出问题,版本问题
2. Redis
2.1 安装
下载镜像
docker pull reids:6.2.7

创建挂载文件
//在/home/docker目录下
mkdir redis6/conf -p
touch redis.conf
** 创建容器并运行**
docker run -p 6379:6379 --name redis6379 \
-v /home/docker/redis/data:/data \
-v /home/docker/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis:6.2.7 \
redis-server /etc/redis/redis.conf


2.2 容器内部
docker exec -it redis6379 bash
//查看目录
ls /
ls -l

进入客户端控制台
redis-cli



2.3 配置
2.3.1 开启自重启
docker update redis6379 --restart=always
2.3.2 修改密码
requirepass Abc1234%
appendonly yes

2.3.3 Redis持久化策略
在redis内部,/usr/local/bin目录下

快照RDB










日志AOF










![[嵌入式系统-73]:RT-Thread-快速上手:如何选择RT Thread的版本?](https://img-blog.csdnimg.cn/img_convert/701a3a9ba6775ca9e4555c9c9582ee07.jpeg)









