美文网首页
docker 安装 mysql和redis

docker 安装 mysql和redis

作者: 惠惠雨辰 | 来源:发表于2020-12-17 22:56 被阅读0次

一 .mysql

1.去docker的镜像仓库找你需要的镜像,地址https://hub.docker.com/search?q=mysql&type=image

点击搜索到得镜像 在tags里面能找到不同的版本,根据需要的版本下载不同的镜像

2. 安装镜像(切换成root用户:su root)初始密码vagrant

docker pull mysql:5.7

检查时候下载好镜像

docker images

3.创建实例并启动

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

参数说明

-p 3306:3306: 将容器的3306端口映射到主机的3306端口,因为每个容器就相当于一个小的虚拟机,要想外面的虚拟机能够访问里面的虚拟机,必须做端口映射

-v /mydata/mysql/log:/var/log/mysql: 将配置文件夹挂载到主机,这样实现了一个双向绑定,在修改外面的配置文件的时候里面的也跟着改变,里面的被修改的时候,外面的也跟着改变

/mydata/mysq/log:/var/log/mysql:将日志文件夫挂载到主机

-v /mydata/mysql/data:/var/lib/mysql:将配置文件夹挂载到主机-e MYSQL ROOT PASSWORD=root:初始化root用户的密码

-d是以后台的方式运行,mysql:5.7是以哪个镜像启动

4.使用docker ps 查看正在运行中的镜像

然后在/mydata/mysql/conf 

vi /mydata/mysql/conf/mv.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

在到mysql的配置文件的路径下找就可以了

配置mysql,开机自启

docker update mysql--restart=always

二.redis

1.下载镜像

docker pull redis

2.创建实例并启动

首先要创建conf目录下的redis.conf文件,这个不会自动创建

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

3.使用redis镜像执行redi-cli命令连接

docker exec -it redis redis-cli

4.修改配置文件,开启持久化

vim redis.conf

添加 appendonly yes

重启redis

docker restart redis

注意:在启动redis的运行了run却发现命令有问题,导致服务没有启动起来

获取 container ID 或者名字

docker container ls -a

如果想要删除正在运行的container,要先停止

docker  container  stop  CONTAINER_ID

删除指定的container

docker  container  rm  CONTAINER_ID  或者 docker  container  rm  CONTAINER_NAME 

相关文章

网友评论

      本文标题:docker 安装 mysql和redis

      本文链接:https://www.haomeiwen.com/subject/igjtnktx.html