1. 程式人生 > >Docker部署Redis通過指定的配置檔案無法正常啟動?

Docker部署Redis通過指定的配置檔案無法正常啟動?

今天在docker上部署了一個redis,命令如下:

“$ docker run --name redis_02 -p 7399:6379 -v /data/redis2/data:/data -v /data/redis2/redis.conf:/etc/redis/redis.conf -d redis redis-server /etc/redis/redis.conf --appendonly yes”

作為對映的目錄也已經建立,並且自己建立的redis.conf配置檔案也存在,但是使用上面的命令死活啟動不了,使用命令“docker logs redis_02”,檢視日誌也沒報什麼錯,感覺很是奇葩。

最後發現,將配置檔案redis.conf中的“daemonize yes”這一行註釋掉,redis就順利啟動了。

“daemonize yes”的作用是開啟守護程序,在配置檔案中指定了該選項,redis將會在後臺執行,並且redis的PID號將被寫入配置檔案中指定的檔案。因此redis會一直執行,除非管理員手動殺掉該程序。

在上面的命令中“-d”選項也是開啟daemonize,只不過這是docker自己指定的方式。

綜上所述,如果你在docker上部署redis並且使用自己寫好的配置檔案,那麼你就不能在配置檔案中將daemonize設定為yes,必須指定為NO。