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
相关推荐
528303 小时前
容器技术入门与Docker环境部署
java·docker·容器
5173 小时前
通过Docker挂载nginx并修改页面
nginx·docker·容器
Fireworkitte10 小时前
如何使用 Dockerfile 创建自定义镜像
运维·docker·容器
heart000_112 小时前
如何用 eBPF 实现 Kubernetes 网络可观测性?实战指南
网络·云原生·容器·kubernetes
Pseudo…13 小时前
容器技术与Docker环境部署
docker·微服务·容器
IT成长日记13 小时前
【Docker基础】Docker镜像管理:docker commit详解
运维·docker·容器·docker commit
IT成长日记13 小时前
【Docker基础】Docker镜像管理:docker build详解
运维·docker·容器·docker build
Byte Beat14 小时前
常用 Docker 命令整理
spring cloud·docker
运维技术分享与探索14 小时前
Centos7.6内网离线安装Docker环境和Portainer-博客
linux·运维·docker·容器·portainer
凉、介15 小时前
CPU Cache 的映射与寻址
linux·arm开发·数据库·redis·缓存·嵌入式