【运维】docker-compose部署redis

本文详细介绍了如何使用docker-compose配置部署单节点Redis服务,包括环境变量设置、密码保护、端口映射以及安全注意事项。适用于开发和测试环境,生产环境需考虑更多安全配置。
摘要由CSDN通过智能技术生成

部署Redis使用docker-compose是一种简便且流行的方式。以下是基本的docker-compose.yml文件示例,用于部署单节点Redis服务

方案一

直接使用docker安装单机版
创建.env环境文件并配置管理密码

echo 'REDIS_PWD=redis123456' > .env

创建docker-compose.yml环境文件

## docker-compose config                  ## 检查当前目录docker-compose.yml文件配置是否正确
## docker-compose up -d                   ## -d 为后台启动
## docker-compose up -d --force-rereate  ## 强制重新创建容器,修改挂载文件后使用该命令启动,谨慎使用,调试时可使用,使用此命令可能造成数据丢失

version: "3"
services:
  redis:
    image: redis:6.2.6
    container_name: redis6.2.6
    ## 设置持久化,允许远程访问,密码等
    command: redis-server --appendonly yes --bind 0.0.0.0 --requirepass ${REDIS_PWD}
    ports:
      - 6379:6379
    volumes:
      - ./data/:/data
    environment:
      - TZ=Asia/Shanghai
    restart: always

方案二

创建docker-compose.yml环境文件

version: '3.8'

services:
  redis:
    image: redis:latest
    container_name: redis_server
    ports:
      - "6379:6379"
    volumes:
      - redis_data:/data
    environment:
      - REDIS_PASSWORD=yourpassword
    command: redis-server --appendonly yes --requirepass ${REDIS_PASSWORD}

volumes:
  redis_data:
    driver: local

解析文件内容

  • version: 定义了docker-compose文件使用的版本,这里使用的是3.8。
  • services: 下面定义了要部署的服务,在本例中是Redis。
  • image: 指定使用的Redis镜像,这里使用的是Docker Hub上的最新官方Redis镜像。
  • container_name: 给容器指定一个名称。
  • ports: 将容器的6379端口映射到宿主机的6379端口,Redis默认端口。
  • volumes: 映射一个卷redis_data到容器内的/data目录,用于持久化存储Redis的数据。
  • environment: 设置环境变量,这里设定了Redis的密码。
  • command: 启动Redis服务器时使用的命令,开启AOF持久化,并设置访问密码。

安全注意事项

  • 密码保护:示例中使用环境变量REDIS_PASSWORD设置了一个密码。在实际使用中,请确保使用一个强密码替换yourpassword。
  • 网络安全:默认情况下,Redis容器将端口映射到宿主机上,这可能会使Redis面对外部访问。确保配置合适的防火墙规则或在安全的内部网络中运行。

这里提供了两个基本的Redis部署示例供参考,适合开发和测试环境。对于生产环境,你可能需要考虑更多的安全措施和配置细节。

扩展

1、【运维】ansible批量安装docker(ansible牛逼,不要太爽了)
2、【运维】在centos7系统中如何给docker配置代理
3、【运维】portainer管理远程docker和docker-swarm集群
4、【运维】docker-compose安装minio集群

  • 10
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
以下是使用docker-compose部署Redis集群的步骤: 1.创建一个目录,例如redis-cluster,并在该目录中创建一个docker-compose.yaml文件。 2.在docker-compose.yaml文件中编写以下内容: ```yaml version: '3' services: redis-1: image: redis:6.0.9 command: redis-server /usr/local/etc/redis/redis.conf volumes: - ./redis.conf:/usr/local/etc/redis/redis.conf ports: - "6379" networks: - redis-cluster redis-2: image: redis:6.0.9 command: redis-server /usr/local/etc/redis/redis.conf volumes: - ./redis.conf:/usr/local/etc/redis/redis.conf ports: - "6380" networks: - redis-cluster redis-3: image: redis:6.0.9 command: redis-server /usr/local/etc/redis/redis.conf volumes: - ./redis.conf:/usr/local/etc/redis/redis.conf ports: - "6381" networks: - redis-cluster networks: redis-cluster: driver: bridge ``` 3.在redis-cluster目录中创建一个redis.conf文件,并将以下内容复制到文件中: ```conf bind 0.0.0.0 port 6379 cluster-enabled yes cluster-config-file nodes.conf cluster-node-timeout 5000 appendonly yes requirepass 1111 masterauth 1111 ``` 4.在终端中导航到redis-cluster目录,并运行以下命令启动Redis集群: ```shell docker-compose up -d ``` 5.使用以下命令进入redis-1容器: ```shell docker exec -it redis-cluster_redis-1_1 /bin/bash ``` 6.在redis-1容器中,使用以下命令创建Redis集群: ```shell redis-cli --cluster create 172.20.0.2:6379 172.20.0.3:6379 172.20.0.4:6379 --cluster-replicas 0 ``` 7.现在,您已经成功地使用docker-compose部署Redis集群。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值