Docker(四)安装 Redis

2021/3/11 dockerredis

Redis 是一个开源的使用 ANSI C 语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value 的 NoSQL 数据库,并提供多种语言的 API。


# 1. 查看可用的 Redis 版本

访问 Redis 镜像库地址 (opens new window)

还可以用 docker search redis 命令来查看可用版本,默认是最新版本 redis:latest

# 2. 拉取 Redis 镜像

拉取官方镜像(我们这里选择 4.2.13,如果不写后面的版本号则会自动拉取最新版)

docker pull redis
1

# 3. 查看本地镜像

检查是否拉取成功

docker images
1

# 4. 配置文件

因为 redis 默认配置只能够本地连接,不能进行远程访问

新建两个文件夹用于挂载配置

// 数据存放目录
[root@centos7 /]# mkdir -p /usr/local/docker/redis/data
// 配置文件存放目录
[root@centos7 /]# mkdir -p /usr/local/docker/redis/conf
1
2
3
4

最好还是去 redis 的官方去下载一个 redis 使用里面的配置文件

修改redis.conf配置文件:

bind 127.0.0.1 #注释掉这部分,使redis可以外部访问
protected-mode no # 开启保护模式,限制为本地访问,默认yes
daemonize no # 用守护线程的方式启动,可后台运行,默认no。除非kill进程,改为yes会使配置文件方式启动redis失败
appendonly yes # redis持久化  默认是no
tcp-keepalive 300 #防止出现远程主机强迫关闭了一个现有的连接的错误 默认是300
requirepass 你的密码 #给redis设置密码
1
2
3
4
5
6

# 5. 运行容器

镜像安装完成后,我们可以使用以下命令来运行 redis 容器:

docker run --name redis -p 6379:6379 \
-v /docker/redis/data:/data \
-v /docker/redis/conf/redis.conf:/etc/redis/redis.conf \
-d --restart=always redis \
redis-server /etc/redis/redis.conf --appendonly yes
1
2
3
4
5
  • redis-server /etc/redis/redis.conf:使用指定的配置文件启动

  • --appendonly yes 开启 redis 持久化

# 6. 安装成功

检查容器是否正确运行

docker ps
或 docker container ls
1
2
  • 可以看到容器 ID,容器的源镜像,启动命令,创建时间,状态,端口映射信息,容器名字

可以查看一下日志:sudo docker logs redis

# 6. 连接 redis

进入 docker 容器,然后连接 redis 数据库

[root@centos7 /] docker exec -it redis redis-cli
127.0.0.1:6379> auth password
OK
1
2
3