docker-compose部署Redis6.0

目录

1.部署环境

2.docker部署

3.docker-compose部署

[4.redis 6.0部署](#4.redis 6.0部署)

4.1拉起公网镜像

[4.2 创建保存数据和配置文件的目录](#4.2 创建保存数据和配置文件的目录)

4.3本地镜像打标签

4.4redis.yml配置

4.5验证

4.6问题记录


1.部署环境

系统:CentOS

容器:docker和docker-compose

2.docker部署

bash 复制代码
yum update

yum install -y yum-utils

yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
    
yum install docker-ce docker-ce-cli containerd.io

systemctl start docker

systemctl enable docker

3.docker-compose部署

离线安装包下载:docker-compose-linux-x86_64

bash 复制代码
cp docker-compose-Linux-x86_64 /usr/local/bin/docker-compose 
chmod +x /usr/local/bin/docker-compose

4.redis 6.0部署

4.1拉起公网镜像

https://hub-stage.docker.com/_/redis/tags(需要翻墙)

bash 复制代码
docker pull redis:6.0
docker images

4.2 创建保存数据和配置文件的目录

bash 复制代码
mkdir -p /data/redis6.0/conf
mkdir -p /data/redis6.0/data

https://download.csdn.net/download/li2327234939/89403390上传配置文件到/data/redis6.0/conf目录下,配置文件下载路径https://download.csdn.net/download/li2327234939/89403390

或者到对应的官网下载:Index of /releases/

修改文件,修改配置问,只需修改如下三处即可:

bash 复制代码
# 关闭保护模式,允许远程连接

protected-mode no

# 开启AOF持久化

appendonly yes

# 密码

requirepass 123456

4.3本地镜像打标签

bash 复制代码
docker tag 67dd041c7103  dockerhub.xxx.local/resource/redis:latest

docker push dockerhub.xxx.local/resource/redis:latest

4.4redis.yml配置

bash 复制代码
version: '3'
services:
  redis: # 服务名称
    image: redis:6.0 # redis镜像版本
    container_name: redis6.0 # 容器名称
    ports:
      - 6379:6379 # 指定宿主机端口与容器端口映射关系,宿主机:容器
    volumes:
      - /data/redis6.0/conf/redis.conf:/etc/redis/redis.conf # 映射配置文件目录,宿主机:容器
      - /data/redis6.0/data:/data # 映射数据目录,宿主机:容器
    restart: always # 容器开机自启
    privileged: true # 获取宿主机root权限
    command: ["redis-server","/etc/redis/redis.conf"] # 指定配置文件启动redis-server进程  

4.5验证

bash 复制代码
docker-compose -f redis.yml up -d

进入docker内部,通过redis自带的redis-cli工具进行验证。进入docker容器内容命令如下:

bash 复制代码
docker exec -it b9fa28b3ccb1 /bin/bash

连接redis。用redis-cli命令

redis-cli -h 192.168.xx.xx -p 6379 -a 123456

redis账号/密码

default/123456

4.6问题记录

docker内部连接redis没有问题,但是通过客户端或者外部方式连接redis出现拒绝连接的情况:

解决方案:

将redis..conf配置中的bind的IP改成0.0.0.0或者注释掉。

相关推荐
tntlbb18 分钟前
Ubuntu20.4 VPN+Docker代理配置
运维·ubuntu·docker·容器
Gabriel_liao1 小时前
Docker安装Neo4j
docker·容器·neo4j
Linux运维技术栈2 小时前
Ansible(自动化运维)环境搭建及ansible-vault加密配置
运维·自动化·ansible
Bessssss3 小时前
centos权限大集合,覆盖多种权限类型,解惑权限后有“. + t s”问题!
linux·运维·centos
苹果醋33 小时前
Golang的文件加密工具
运维·vue.js·spring boot·nginx·课程设计
jwensh3 小时前
【Jenkins】Declarative和Scripted两种脚本模式有什么具体的区别
运维·前端·jenkins
豆豆豆豆变4 小时前
Docker轻量级可视化工具Portainer
docker·容器·自动化运维
花晓木4 小时前
k8s etcd 数据损坏处理方式
容器·kubernetes·etcd
运维&陈同学4 小时前
【模块一】kubernetes容器编排进阶实战之基于velero及minio实现etcd数据备份与恢复
数据库·后端·云原生·容器·kubernetes·etcd·minio·velero
花晓木4 小时前
k8s备份 ETCD , 使用velero工具进行备份
容器·kubernetes·etcd