我在码头工人上使用官方redis图像和sidekiq。
以下是redis映像的yml配置:
Redis的: 建造:。 dockerfile:Dockerfile-redis 端口: - ‘6379:6379’ 卷: …
似乎官方redis映像正在使用应用程序用户运行redis-server而不是root(这是一种安全性最佳实践),无论USER定义如何 - 我从图像的入口点shell脚本中提取了它:
# allow the container to be started with `--user` if [ "$1" = 'redis-server' -a "$(id -u)" = '0' ]; then find . \! -user redis -exec chown redis '{}' + exec gosu redis "$0" "$@" fi
将卷装入容器时,它由root用户拥有,它将覆盖图像层中的默认目录以及先前的权限。
似乎redis图像意图不是将'/ var / lib / redis'目录暴露为卷,而是提供 安装到'/ data /' 持久性:
如果启用了持久性,则数据存储在VOLUME / data中,可以与--volumes-from some-volume-container或-v / docker / host / dir:/ data一起使用(请参阅docs.docker卷)。 有关Redis Persistence的更多信息,请参阅 http://redis.io/topics/persistence 。
如果启用了持久性,则数据存储在VOLUME / data中,可以与--volumes-from some-volume-container或-v / docker / host / dir:/ data一起使用(请参阅docs.docker卷)。
有关Redis Persistence的更多信息,请参阅 http://redis.io/topics/persistence 。