image.png

重点:把 Redis 运行的数据放在外面

  • Redis 数据绑定到外部:容器内部的数据在 /data 下。

Docker 安装 Redis

参考资料:Docker hub 里搜索 Redis

https://hub.docker.com/_/redis

简化版

传文件 redis.conf 到虚拟机 192.168.47.128 的 /root/redis 目录下

scp redis.conf root@192.168.47.128:/root/redis

修改配置 bind 0.0.0.0

启动一个 Docker 容器:

docker run --name myredis -v /root/redis/data:/data -v /root/redis/redis.conf:/usr/local/etc/redis/redis.conf -p 6900:6379 -d redis:latest redis-server /usr/local/etc/redis/redis.conf

详细版

  1. 在 Docker hub 搜索 Redis 镜像
docker search redis
  1. 拉取 Redis 镜像到本地
docker pull redis
  1. 启动一个 Redis 容器

下面的命令没有暴露对外的端口:docker run --name redis -d redis:tag (不用这一条)

docker run --name myredis -p 6800:6379 -d redis:latest
  • -d :表示在后台启动
  • redis:latest 表示镜像

查看启动日志

docker logs -t -f 容器 id|容器名称

  1. 进入容器内部查看
docker exec -it redis bash
pwd
redis-cli
  1. 需要修改的配置
# 把 bind 改成 0.0.0.0
bind 0.0.0.0
# 开启 aof 持久化
appendonly yes 
  1. 加载启动配置(这不是最全的命令)
  • /usr/local/etc/redis 是容器内部的 Redis
  • 注意:要带上后面的 redis-server /usr/local/etc/redis/redis.conf
docker run --name myredis -v /root/redis/redis.conf:/usr/local/etc/redis/redis.conf -p 6379:6379 -d redis:latest redis-server /usr/local/etc/redis/redis.conf
  1. 最全的启动 Redis 容器命令(注意,有两个 v)
docker run --name myredis -v /root/redis/data:/data -v /root/redis/redis.conf:/usr/local/etc/redis/redis.conf -p 6379:6379 -d redis:latest redis-server /usr/local/etc/redis/redis.conf

redis 可以使用配置文件启动,redis-server 指向的是:已经映射过的,容器中的配置文件。

注意:前面有个冒号(:)。

解压:

tar -zxvf 

liweiwei1419
15 声望6 粉丝

基础算法讲师,LeetCode 网红(已过气)。