簡體   English   中英

將 Redis 值初始化為 docker-compose 的一部分

[英]Initializing Redis values as part of a docker-compose

我有一個包含多個服務的docker-compose設置,其中我有一個 redis 服務。

我將它用於我的持續集成流程和系統的手動本地運行。 我希望能夠為這些非生產流程將初始內容設置為 redis。

我考慮在我的 docker-compose 文件中設置一個入口點並添加我的腳本,但我不想覆蓋默認入口點。 我怎樣才能將我的腳本連接到它呢?

我需要的實際腳本可能只包含 4 個命令:

  • 打開 redis cli
  • 登錄到特定的 redis 實例
  • 設置所需的值
  • 也許從 redis 實例斷開連接?

有比覆蓋入口點更清潔的解決方案嗎?

如果它是您的持續集成流程的一部分,那么為什么不在您的流程中添加一個額外的步驟,在您啟動 docker-compose 環境后針對 redis 容器運行此腳本?

這將是這個邏輯的合適位置,因為您的容器可能不應該負責填充自己的 state,這應該是您周圍的構建/部署腳本的任務。


對於手動本地運行,您最好的選擇仍然是在您的容器“外部”編寫此腳本:從使用docker-compose up進行本地運行到自定義up.sh腳本,該腳本在每次運行時為您設置此 state(也許通過任何腳本 arguments 到docker-compose命令里面)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM