Docker安装官方Redis镜像并启用密码认证

Valentina ·
更新时间:2024-09-21
· 935 次阅读

参考:docker官方redis文档

1.有特殊版本需求的可以查看redis镜像tag版本

3.2.11, 3.2, 3 (3.2/Dockerfile) 3.2.11-32bit, 3.2-32bit, 3-32bit (3.2/32bit/Dockerfile) 3.2.11-alpine, 3.2-alpine, 3-alpine (3.2/alpine/Dockerfile) 4.0.9, 4.0, 4, latest (4.0/Dockerfile) 4.0.9-32bit, 4.0-32bit, 4-32bit, 32bit (4.0/32bit/Dockerfile) 4.0.9-alpine, 4.0-alpine, 4-alpine, alpine (4.0/alpine/Dockerfile)

2.选择最新版latest

docker pull redis:latest [root@localhost~]# docker pull redis:latest latest: Pulling from library/redis 4d0d76e05f3c: Pull complete cfbf30a55ec9: Pull complete 82648e31640d: Pull complete fb7ace35d550: Pull complete 497bf119bebf: Pull complete 89340f6074da: Pull complete Digest: sha256:166788713c58c2db31c41de82bbe133560304c16c70e53a53ca3cfcf35467d8a Status: Downloaded newer image for redis:latest

3.启动容器并带密码

docker run --name redis-test -p 6379:6379 -d --restart=always redis:latest redis-server --appendonly yes --requirepass "your passwd"

-p 6379:6379 :将容器内端口映射到宿主机端口(右边映射到左边)
redis-server –appendonly yes : 在容器执行redis-server启动命令,并打开redis持久化配置
requirepass “your passwd” :设置认证密码
–restart=always : 随docker启动而启动

4.查看容器

docker ps [root@localhost~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES a126ec987cfe redis:latest "docker-entrypoint.s…" 4 minutes ago Up 4 minutes 0.0.0.0:6379->6379/tcp redis-test 3645da72ece6 portainer/portainer "/portainer" 7 days ago Up 7 days 0.0.0.0:9000->9000/tcp sharp_lovelace 118ba79de20a hwdsl2/ipsec-vpn-server "/opt/src/run.sh" 12 days ago Up 12 days 0.0.0.0:500->500/udp, 0.0.0.0:4500->4500/udp l2tp-vpn-server 848fdba6de60 kylemanna/openvpn "ovpn_run" 12 days ago Up 12 days 1194/udp, 0.0.0.0:1194->1194/tcp openvpn a273504f9646 mysql:5.6.38 "docker-entrypoint.s…" 8 weeks ago Up 5 days 0.0.0.0:3306->3306/tcp mysql5.6.38

redis容器的id是 a126ec987cfe

5.查看进程

ps -ef|grep redis [root@localhost~]# ps -ef|grep redis polkitd 26547 26535 0 14:58 ? 00:00:00 redis-server *:6379 root 26610 26432 0 15:05 pts/0 00:00:00 grep --color=auto redis

6.进入容器执行redis客户端

docker exec -it a126ec987cfe redis-cli -a 'your passwd' [root@localhost~]# docker exec -it a126ec987cfe redis-cli -h 127.0.0.1 -p 6379 -a 'your passwd' 127.0.0.1:6379> ping PONG 127.0.0.1:6379> info # Server redis_version:4.0.9 redis_git_sha1:00000000 redis_git_dirty:0 redis_build_id:d3ebfc7feabc1290 redis_mode:standalone os:Linux 3.10.0-693.21.1.el7.x86_64 x86_64 ...

-h 127.0.0.1 :默认不加为-h 127.0.0.1
-p 6379 :默认不加为 -p 6379

或者连接的时候不带密码,如下:

[root@localhost ~]# docker exec -it a126ec987cfe redis-cli 127.0.0.1:6379> ping (error) NOAUTH Authentication required. 127.0.0.1:6379> auth 'your passwd' OK 127.0.0.1:6379> ping PONG 127.0.0.1:6379> info # Server redis_version:4.0.9 redis_git_sha1:00000000 redis_git_dirty:0 redis_build_id:d3ebfc7feabc1290 redis_mode:standalone os:Linux 3.10.0-693.21.1.el7.x86_64 x86_64 arch_bits:64 您可能感兴趣的文章:详解docker搭建redis集群的环境搭建docker创建redis镜像的方法Ubuntu 搭建基于Docker的LNMP+Redis的开发环境(图文)Docker安装常用组件(mysql,redis)的方法Docker下redis的主从配置教程详解基于docker搭建redis-sentinel集群的方法示例linux环境部署及docker安装redis的方法一次centos Docker网桥模式无法访问宿主机Redis服务的故障排除经历



docker安装 Redis Docker

需要 登录 后方可回复, 如果你还没有账号请 注册新账号