Docker Compose使用自定义用户名密码启动Redis

通常我们使用下面的命令来启动 redis 容器,此时连接 Redis 的时候是不需要用户认证的

shell 复制代码
sudo docker run -d --name my-redis -p 6379:6379 redis

此时我们可以使用 redis-server --requirepass "mypassword" 来指定默认用户(default)的密码,客户端可以使用 default/mypassword 来连接 Redis

shell 复制代码
sudo docker run -d --name my-redis -p 6379:6379 redis redis-server --requirepass "mypassword"

那如果想使用自定义用户名/密码可以通过 redis.conf 来实现。

创建 redis.conf 文件,内容如下

shell 复制代码
user default off on nopass nocommands
user admin >mypassword on ~* &* +@all

其中第一行是disable默认用户default,第二行是创建 admin/mypassword 用户和分配权限。

然后使用下面命令启动

shell 复制代码
docker run --name my-redis -p 6379:6379 -v /home/kongxx/redis.conf:/etc/redis.conf redis redis-server /etc/redis.conf

最后,使用compose文件redis.yml,内容如下

shell 复制代码
name: my-redis

services:
    my-redis:
        container_name: my-redis
        image: redis:latest
        restart: always
        ports:
            - 6379:6379
        command: >
            --'user default off on nopass nocommands'
            --'user admin on >mypassword ~* &* +@all'

启动容器

shell 复制代码
sudo docker compose -f ./redis.yml up -d
相关推荐
学Linux的语莫8 小时前
docker,docker-compose二进制包安装
docker
_oP_i10 小时前
Docker 整体架构
docker·容器·架构
杨浦老苏10 小时前
可视化服务构建器Dock-Dploy
docker·工具·群晖
落世繁华10 小时前
DIFY合同生成全流程开发实践(三、后端接口以及优化方向)
docker·一键部署·dify·合同生成·文字转word
嘻哈baby10 小时前
Redis高可用部署与集群管理实战
数据库·redis·bootstrap
ascarl201011 小时前
Kubernetes 环境 NFS 卡死问题排查与解决纪要
云原生·容器·kubernetes
Java爱好狂.13 小时前
Java面试Redis核心知识点整理!
java·数据库·redis·分布式锁·java面试·后端开发·java八股文
阿杆13 小时前
如何在 Spring Boot 中接入 Amazon ElastiCache
java·数据库·redis
m0_5695310113 小时前
《K8s 网络入门到进阶:Service 与 Ingress 原理、部署方案及核心区别对比》
网络·容器·kubernetes
wxjlkh14 小时前
docker 搭建 grafana+prometheus 监控主机资源之node_exporter
docker·grafana·prometheus