Redis教程

Docker 部署redis

本文主要是介绍Docker 部署redis,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

目录

  • 一、安装Docker
    • 1、安装使用工具(以linux为例)
    • 2. 添加yum镜像
    • 3. 更新yum缓存
    • 4. 安装docker-ce
    • 5. 启动docker服务
    • 6. 查看docker信息
    • 7. 查找centos可用镜像
    • 8. 镜像仓库地址
    • 9. 查看docker服务
  • 二、容器的操作
  • 三、docker安装redis并以配置文件方式启动
      • 1、获取redis镜像
      • 2、查看本地镜像
      • 3、修改配置文件然后以配置文件的形式启动容器,做映射
      • 4、在阿里云开启4001端口,然后就可以连接使用了
  • 四、其他补充
      • 1、查看redis版本
      • 2、查看密码和设置密码
      • 3、Redis-cli客户端连接远程Redis服务器验证密码是否生效![在这里插入图片描述](https://www.www.zyiz.net/i/ll/?i=8fbec8e4fc804309a3059b7b472f4b5c.png)
      • 4、

一、安装Docker

1、安装使用工具(以linux为例)

yum install -y yum-utils device-mapper-persistent-data lvm2

2. 添加yum镜像

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

3. 更新yum缓存

yum makecache fast

4. 安装docker-ce

yum -y install docker-ce

5. 启动docker服务

systemctl start docker  #对应的还有stop restart

6. 查看docker信息

docker info

7. 查找centos可用镜像

docker search centos

8. 镜像仓库地址

https://hub.docker.com     
国内网址:http://hub.daocloud.io

9. 查看docker服务

systemctl list-unit-files | grep docker   #如果显示disabled,说明docker服务不会随着操作系统的启动而自动启动,使用 systemctl enable docker 就会随着操作系统启动而启动了

注意事项:建议在centos7版本上安装docker

二、容器的操作

  1. 搜索镜像:docker search hello-work(镜像名)
  2. 拉取镜像:docker pull hello-work(默认情况下会拉取最新的镜像,如果需要拉取指定版本需要指定tag标签,例如安装mysql5.6,docker pull mysql:5.6)
  3. 运行镜像:docker run hello-work
  4. 查看镜像:docker images
  5. 创建容器:docker create --name mysql5.6(指定容器的名称) -e MYSQL_ROOT_PASSWORD=123456(设置密码) -p 3307:3306 (3307是自己指定的,3306为要映射的) daocloud.io/mysql:tag(镜像的名称)(可以到http://hub.daocloud.io/查找命令)
docker run --name mysql5.6  -e MYSQL_ROOT_PASSWORD=123456 -p 3307:3306   -d mysql:5.6.22  #-d (后台运行),直接使用run,会创建并运行
  1. 查看docker目前正在运行的容器:docker ps , docker container ls -a
  2. 启停容器:docker start/stop/restart hello-work(容器名)
  3. 删除容器:docker rm 容器名(删除容器并不会删除镜像)
  4. 删除镜像:docker rmi hello-work(删除的镜像不能创建容器)
  5. 容器使用注意事项:
    1、尽量让一个容器做一件事情,或者一个服务
    2、尽量使用挂载的方式将数据文件挂载到容器中,容器里面尽量不要保存数据
    3、尽量让容器按照docker的要求来使用容器,而不是安装一个虚拟机
    4、尽量不使用交互模式来操作容器,而是在宿主机上执行命令

Docker命令大全: https://www.runoob.com/docker/docker-command-manual.html

三、docker安装redis并以配置文件方式启动

1、获取redis镜像

# 这样获取默认会拉取最新的版本
docker pull redis

#指定版本号的方法:
docker pull redis:6.2.2

# 可以到官网查看版本信息:https://hub.docker.com/_/redis

2、查看本地镜像

docker images

在这里插入图片描述

3、修改配置文件然后以配置文件的形式启动容器,做映射

  • 1、在宿主机中通过yum安装redis 5.0.8
wget http://download.redis.io/releases/redis-6.2.2.tar.gz
  • 2、解压刚刚下载好的文件
tar xzf redis-6.2.2.tar.gz
  • 3、修改启动默认配置(从上至下依次)
requirepass admin23       # 默认是注释掉,这是配置redis的连接密码,取消注释,设置自己的密码
bind 127.0.0.1        #注释掉这部分,这是限制redis只能本地访问
protected-mode no    #默认yes,开启保护模式,限制为本地访问

daemonize no         #默认no,改为yes意为以守护进程方式启动,可后台运行,除非kill进程,改为yes会使配置文件方式启动redis失败(可选)
databases 16        #数据库个数,我修改了这个只是查看是否生效。。(可选)
dir  ./             #输入本地redis数据库存放文件夹(可选)
appendonly yes      #redis持久化(可选)

vim 进到详情后,输入 /此处输入想要搜索的内容 回车  按n 找匹配到的下一个内容u往上找 
  • 4、docker启动redis命令
    我把修改好的配置文件单独复制到了root目录下
    在这里插入图片描述
docker run --name myredis  -v /root/redis.conf:/usr/local/etc/redis/redis.conf -p 4001:6379 -d  redis redis-server /usr/local/etc/redis/redis.conf

命令解释说明:

--name myredis  ===>   指定该容器名称,查看和进行操作都比较方便。

-p 4001:6379    ===>  端口映射,前表示主机部分,:后表示容器部分。

-v /root/redis.conf:/usr/local/etc/redis/redis.conf  ===>    挂载目录,规则与端口映射相同。为什么需要挂载目录:个人认为docker是个沙箱隔离级别的容器,这个是它的特点及安全机制,不能随便访问外部(主机)资源目录,所以需要这个挂载目录机制。/root/redis.conf为宿主机配置文件的位置,/usr/local/etc/redis/redis.conf为容器里面的放配置文件的位置,不存的文件会自动创建

-d redis        ===>  表示后台启动redis

redis-server /usr/local/etc/redis/redis.conf    ===>   以配置文件启动redis,加载容器内的conf文件,最终找到的是挂载的目录/usr/local/etc/redis/redis.conf

--appendonly yes ===>  开启redis 持久化
  • 5、查看是否启动成功
docker ps
# 查看所有状态的 包括停用的
docker ps -a
# 查看使用端口4001的所有进程
ps aux | grep 4001
# 查看redis的日志
docker logs myredis(自己命名的redis的名称)

在这里插入图片描述

4、在阿里云开启4001端口,然后就可以连接使用了

四、其他补充

1、查看redis版本

1、进到容器
docker exec -it myredis /bin/bash
2、查看版本信息
redis-cli --version

2、查看密码和设置密码

1、查看现有的redis密码:config get requirepass
2、设置redis密码config set requirepass ****(****为你要设置的密码)
3、若出现(error) NOAUTH Authentication required.错误,则使用 auth 密码 来认证密码

3、Redis-cli客户端连接远程Redis服务器验证密码是否生效在这里插入图片描述

4、

①、redis-server:Redis服务器

②、redis-cli:Redis命令行客户端

③、redis-benchmark:Redis性能测试工具

④、redis-check-aof:AOF文件修复工具

⑤、redis-check-rdb:RDB文件检查工具

这篇关于Docker 部署redis的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!