1. 程式人生 > >Docker安裝官方Redis映象並啟用密碼認證 實踐筆記

Docker安裝官方Redis映象並啟用密碼認證 實踐筆記

參考: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)
1
2
3
4
5
6
2.選擇最新版latest
docker pull redis:latest
1
[

[email protected]~]# 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
1
2
3
4
5
6
7
8
9
10
3.啟動容器並帶密碼
docker run --name redis-test -p 6379:6379 -d --restart=always redis:latest redis-server --appendonly yes --requirepass "your passwd"
1
-p 6379:6379 :將容器內埠對映到宿主機埠(右邊對映到左邊) 
redis-server –appendonly yes : 在容器執行redis-server啟動命令,並開啟redis持久化配置 
requirepass “your passwd” :設定認證密碼 
–restart=always : 隨docker啟動而啟動

4.檢視容器
docker ps
1
[[email protected]~]# 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
1
2
3
4
5
6
7
redis容器的id是 a126ec987cfe

5.檢視程序
ps -ef|grep redis
1
[[email protected]~]# 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
1
2
3
6.進入容器執行redis客戶端
docker exec -it a126ec987cfe redis-cli -a 'your passwd'
1
[[email protected]~]# 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
...
1
2
3
4
5
6
7
8
9
10
11
12
-h 127.0.0.1 :預設不加為-h 127.0.0.1 
-p 6379 :預設不加為 -p 6379

或者連線的時候不帶密碼,如下:
[[email protected] ~]# 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
--------------------- 
作者:JanelSirry 
來源:CSDN 
原文:https://blog.csdn.net/cookily_liangzai/article/details/80726163?utm_source=copy 
版權宣告:本文為博主原創文章,轉載請附上博文連結!

 

 

docker run --name redis321 -v /dockerdata/redis321/usr/local/etc/redis/redis.conf:/usr/local/etc/redis/redis.conf -p 6379:6379 -d --restart=always redis:3.2.1 redis-server --appendonly yes --requirepass "123456"