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
相关推荐
AAA修煤气灶刘哥2 小时前
别让Redis「歪脖子」!一次搞定数据倾斜与请求倾斜的捉妖记
redis·分布式·后端
容器魔方8 小时前
Bloomberg 正式加入 Karmada 用户组!
云原生·容器·云计算
christine-rr13 小时前
linux常用命令(4)——压缩命令
linux·服务器·redis
muyun280013 小时前
Docker 下部署 Elasticsearch 8 并集成 Kibana 和 IK 分词器
elasticsearch·docker·容器
Nazi614 小时前
k8s的dashboard
云原生·容器·kubernetes
凯子坚持 c14 小时前
精通 Redis list:使用 redis-plus-plus 的现代 C++ 实践深度解析
c++·redis·list
weixin_4569042714 小时前
跨域(CORS)和缓存中间件(Redis)深度解析
redis·缓存·中间件
波波烤鸭16 小时前
Redis 高可用实战源码解析(Sentinel + Cluster 整合应用)
数据库·redis·sentinel
傻傻虎虎19 小时前
【Docker】常用帮忙、镜像、容器、其他命令合集(2)
运维·docker·容器
是小崔啊19 小时前
叩丁狼K8s - 概念篇
云原生·容器·kubernetes