我的操作系统是:ubuntu:15.10
我想使用官方docker-hub redis ,但遇到了问题。
我的docker-compose.yml
version: '2'
services:
redis:
image: redis
ports:
- "6379:6379"
volumes:
- ~/dbdata/redis_conf/redis.conf:/usr/local/etc/redis/redis.conf
volumes_from:
- redisdata
environment:
- REDIS_PASSWORD: 29c4181fb842b5f24a3103dbd2ba17accb1f7e3c8f19868955401ab921
command: redis-server /usr/local/etc/redis/redis.conf
redisdata:
image: redis
volumes:
- /home/keryhu/dbdata/redisdb:/data
command: --break-redis
我将默认的redis.conf复制到“〜/ dbdata / redis_conf / redis.conf”目录。只需将“requirepass”修改为“29c4181fb842b5f24a3103dbd2ba17accb1f7e3c8f19868955401ab921”
当我启动容器时,我遇到了错误 -
*** FATAL CONFIG FILE ERROR ***
Reading the configuration file, at line 103
>>> 'logfile /var/log/redis/redis-server.log'
Can't open the log file: No such file or directory
可以帮帮我吗?
答案 0 :(得分:4)
我可以看到here,未指定日志文件,所有日志都输出到stdout。我不会改变这种行为,因为这样docker会自己管理日志,这是标准的,甚至更灵活的方式。
如果您想将日志输出重定向到我建议使用作曲家logging
directive的地方。
答案 1 :(得分:0)
我也碰巧也遇到了这个问题。最后,我触摸了主机上的redis.log,然后将其安装在docker上。
step1: touch /yourself's location/redis-server.log
docker run -d -v /yourself's location/redis-server.log:/var/log/redis/redis-server.log -v /your/redis.config:/usr/local/etc/redis/redis.conf --name myredis redis redis-server /usr/local/etc/redis/redis.conf
如果要挂载文件或目录,则必须先存在它们,否则,它会导致权限被拒绝或目录为空。