docker-compose 安装 Redis 步骤

创建项目目录

创建一个新的目录来存放 docker-compose.yml 文件:

mkdir redis-docker && cd redis-docker

获取 Redis 配置文件

redis-docker 目录下创建 config 目录,并从 Redis 官方仓库 下载默认的 redis.conf 文件,或者使用以下命令直接下载:

curl -o config/redis.conf https://raw.githubusercontent.com/redis/redis/7.2/redis.conf

创建 docker-compose.yml 文件

在项目目录中创建一个名为 docker-compose.yml 的文件,并添加以下内容:

version: '3.8'

services:
  redis:
    image: redis:latest
    container_name: my-redis
    ports:
      - "6379:6379"
    volumes:
      - ./config/redis.conf:/usr/local/etc/redis/redis.conf
      - redis-data:/data
    restart: unless-stopped

volumes:
  redis-data:

配置说明

  • services: 定义服务,这里只有一个 Redis 服务。
    • image: 使用官方最新的 Redis 镜像。
    • container_name: 指定容器名称为 my-redis
    • ports: 将宿主机的 6379 端口映射到容器的 6379 端口。
    • volumes:
      • 将当前目录下的 config/redis.conf 文件映射到容器的 /usr/local/etc/redis/redis.conf 文件,便于在host机器上进行redis配置。
      • 将容器的 /data 目录挂载到名为 redis-data 的 Docker 卷,以实现数据持久化。
    • restart: 容器退出时自动重启策略,这里设置为除非手动停止,否则总是重启。

如果需要将数据存储在 host 机器,则需要先创建 data 目录,且 docker-compose.yml 文件如下:

version: '3.8'

services:
  redis:
    image: redis:latest
    container_name: redis-server
    ports:
      - "6379:6379"
    volumes:
      - ./config/redis.conf:/usr/local/etc/redis/redis.conf
      - ./data:/data
    command: ["redis-server", "--appendonly", "yes"]
    restart: unless-stopped

  • volumes:
    • 将当前目录下的 data 文件夹挂载到容器的 /data 目录,用于持久化存储。
    • 将当前目录下的 config/redis.conf 文件映射到容器的 /usr/local/etc/redis/redis.conf 文件,便于在本地修改redis配置。

启动 Redis 服务

redis-docker 目录下运行以下命令启动 Redis:

docker-compose up -d
  • 启动结果
[+] Running 2/2
 ✔ Network redis-docker_default  Created     0.1s
 ✔ Container redis-server        Started     0.1s

验证 Redis 是否运行

你可以使用以下命令查看运行中的容器:

docker-compose ps
  • 返回结果
NAME           IMAGE          COMMAND                  SERVICE   CREATED         STATUS         PORTS
redis-server   redis:latest   "docker-entrypoint.s…"   redis     8 minutes ago   Up 8 minutes   0.0.0.0:6379->6379/tcp

停止和移除容器

如果需要停止 Redis 服务,可以使用:

docker-compose down
posted @ 2024-10-18 17:37  Jacob-Chen  阅读(1131)  评论(0)    收藏  举报