2015-07-28 28 views
5

我想在我的Docker上運行的Redis服務器上設置密碼。我也跟着instcruction上https://registry.hub.docker.com/_/redis/如何使用不同的配置文件在docker上運行Redis?

1.I創建了一個帶有Dockerfile包含的文件夾:

FROM redis 
COPY redis.conf /usr/local/etc/redis/redis.conf 
CMD [ "redis-server", "/usr/local/etc/redis/redis.conf" ] 

2.我已經添加了一個redis.conf文件有:

requirepass thepassword 

3.我使用的是:

docker build -t ouruser/redis . 

4.我開始使用容器:

docker run --name my-redis -p 0.0.0.0:6379:6379 -d ouruser/redis redis-server --appendonly yes 

redis服務器沒有任何密碼!我不懂爲什麼。

回答

9

運行命令:

docker run --name my-redis -p 0.0.0.0:6379:6379 -d ouruser/redis redis-server --appendonly yes 

覆蓋在Dockerfile定義的redis-server --appendonly yes的CMD,那麼你的conf文件將被忽略。只需添加路徑conf文件到您的運行命令:

docker run --name my-redis -p 0.0.0.0:6379:6379 -d ouruser/redis redis-server /usr/local/etc/redis/redis.conf --appendonly yes 

另外,建立一個入口點腳本或添加--appendonly yes到CMD指令。

相關問題