只有累積,沒有奇蹟

2019年2月15日 星期五

[Redis] 使用 Docker 安裝 Redis

前言 
在上一篇分享了如何在 Windows 上安裝 Redis 服務,文章最後也有提到使用微軟的下載連結安裝後 Redis 版本為 3.2 版,與官網提供最新穩定版 5.0.3 版本差異有些懸殊,Windows For Redis 安裝似乎也沒再繼續支援的樣子,如果想要在 Windows 上使用 Redis 3.2 版後的新功能似乎有難度,這篇介紹如何在 Docker 安裝 Redis 服務解決這問題,如有謬誤歡迎高手給予指導。 

Docker 安裝 Redis 
Docker 如何在 Windos 上進行安裝之前已經有在 Docker for Windows 文章分享過,在此篇就不在回顧安裝的過程,以下就針對在 Docker 安裝 Redis 的過程做介紹,指令的詳細介紹可以參考官網 Docker Commands 

下載 image
第一步是在 Docker 透過 pull <image Name> 指令取得 Redis image 檔
docker pull redis
設會到 docker repository 搜尋最新版的 Redis image 檔,如果有找到會進行下載指定版本的 redis image 檔案,未指定版本預設下載最新版

執行 image
接下來,使用 docker run <image> 指令起一個 container 來執行 image 檔
並指定執行 container 的名字為 redis-lab、port 號為 6379、指定背景執行
docker run --name redis-lab -p 6379:6379 -d redis
順利正常執行會顯示 container ID 在畫面上

確認 container
上一步已經正常執行 Redis container,接著來透過 ps 指令列出目前 container 列表
docker ps
安裝過程完整指令與顯示如下
PS C:\> docker pull redis
Using default tag: latest
latest: Pulling from library/redis
Digest: sha256:dd5b84ce536dffdcab79024f4df5485d010affa09e6c399b215e199a0dca38c4
Status: Image is up to date for redis:latest
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
PS C:\> docker run --name redis-lab -p 6379:6379 -d redis
e819ea3d7a7bba32add5d5f8b13dc078d43cfc47ee67e430e44552503ae001fb
PS C:\> docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
e819ea3d7a7b        redis               "docker-entrypoint.s…"   32 minutes ago      Up 32 minutes       0.0.0.0:6379->6379/tcp   redis-lab
PS C:\>

測試 Redis
之前測試是透過 Redis-cli command tool 進行測試 redis 的動作,在 redis 起來時 container 中內建 redis-cli 工具可以直接測試,如果不透過其他工具可以使用進到 container 使用 tool 測試,步驟如下

進 container 測試
使用 exec <image Name> 對 container 容器下指令,在上面有看到 containerID 為 e819ea3d 下指令時 ID 可以縮寫前兩碼即可
docker exec -it e819 bash
上面有提到要使用 Redis-cli tool 測試,接著輸入下列指令 
redis-cli
系統會回應進入到 127.0.0.1:6379 內,之前有介紹過可以透過 Ping 確認會回傳 PONG 
Ping
// PONG
測試 GET / SET 
透過基本的 SET / GET 指令確認服務是否正常,由於之前已經有介紹過這裡就不在多說明,直接上 Code
127.0.0.1:6379> set test "hello world"
OK
127.0.0.1:6379> get test
"hello world"
127.0.0.1:6379> 
測試過程完整指令與顯示如下 
PS C:\> docker exec -it e819 bash
root@e819ea3d7a7b:/data# redis-cli
127.0.0.1:6379> ping
PONG

127.0.0.1:6379> set test "hello world"
OK
127.0.0.1:6379> get test
"hello world"

心得
分別分享了 Redis 在 Windows 與 Docker 如何安裝,自己選擇上在執行還是建議以運行在 Docker 為主,主要是因為版本與管理都方便許多,但如果不需要 Redis 3.2 之後的功能或許也可以參考 Window 安裝達到目的,之後也會陸續介紹實際應用時的問題與解法。

參考
Docker Documentation

1 則留言:

Copyright © m@rcus 學習筆記 | Powered by Blogger

Design by Anders Noren | Blogger Theme by NewBloggerThemes.com