SpringCloudAlibaba(3)

2020-04-27

项目准备工作,安装docker

安装MySQL,下载MySQL5.7的镜像

下载镜像

docker pull mysql:5.7

运行镜像
docker run -p 8090: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=misterzhang \
-d mysql:5.7

参数说明:

  • -p 8090:3306 将容器的3306端口映射到主机的8090端口
  • --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=misterzhang 初始化root用户的密码
  • -d 以后台的形式运行
  • mysql:5.7 运行哪一个镜像

配置MySQL

1.创建文件

vi /mydata/mysql/conf/my.cnf

2.添加配置

[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

3.重启mysql

docker restart mysql

4.进入容器内部,查看配置

docker exec -it mysql /bin/bash
cd /etc/mysql
ls
cat my.cnf
exit

下载redis镜像

#不标记版本为下载最新版本latest
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/reids/redis.conf \
-d redis redis-server /etc/redis/redis.conf

-1.把容器内布的data(存了redis中的一些数据)文件夹挂载到/mydata/redis/data
1.每次启动redis服务都会去加载这个配置/etc/redis/redis.conf
2./etc/reids/redis.conf这个配置每次都去加载数据卷,也就是我们挂载到外边的配置/mydata/redis/conf/redis.conf

#进入redis客户端
docker exec -it redis redis-cli
#向redis中存储数据
set a b
get a
#此时会输出b
#退出
exit
#当重启后再进入,数据是没有的

但是redis中是存在内存中的,容器一旦关闭数据就没有了,让他持久化的办法如下:

#编辑配置文件
vim /mydata/redis/conf/redis.conf
#输入如下命令
appendonly yes
#存储后再重启发现数据还在,自此redis数据的持久化完成了

标题:SpringCloudAlibaba(3)
作者:张范
地址:http://misterzhang.top/articles/2020/04/27/1587971282690.html