docker运行redis

我的docker最开始报错:Can't open the log file: Permission denied
后来我设置了log文件并挂载了,还是报错

[root@localhost master]# docker run  -p 6379:6379 --name myredis --privileged=true -v /myredis/master/redis.conf:/etc/redis/redis.conf -v /myredis/master/data:/data -v /myredis/master/logs/redis.log:/var/logs/redis.log -d redis:7.0.11 redis-server /etc/redis/redis.conf
c7ca8320a18ca1bb2e6795294efab849c6d1d63c7b800eaab248170b1e08d757
[root@localhost master]# docker ps -a
CONTAINER ID   IMAGE          COMMAND                   CREATED         STATUS                     PORTS     NAMES
c7ca8320a18c   redis:7.0.11   "docker-entrypoint.s…"   5 seconds ago   Exited (0) 5 seconds ago             myredis
[root@localhost master]# docker logs c7ca8320a18c
[root@localhost master]# cd logs
[root@localhost logs]# ll
总用量 4
-rw-------. 1 polkitd input 78 625 01:15 redis.log
[root@localhost logs]# chmod 777 redis.log 
[root@localhost logs]# docker start c7ca8320a18c
c7ca8320a18c
[root@localhost logs]# docker logs c7ca8320a18c
[root@localhost logs]# docker ps
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES
[root@localhost logs]# docker ps -a
CONTAINER ID   IMAGE          COMMAND                   CREATED              STATUS                      PORTS     NAMES
c7ca8320a18c   redis:7.0.11   "docker-entrypoint.s…"   About a minute ago   Exited (0) 16 seconds ago             myredis
[root@localhost logs]# 

我的redis.conf文件

logfile "/var/logs/redis.log"

没有权限,以root权限执行应该就可以了

看下redis.log中有啥报错

给本地文件加个775的权限看一下

试试这个解决办法:

1、找到你的redis-server.service文件,路径可能不一样

vim /usr/lib/systemd/system/redis-server.service

2、注释掉以下代码:

#ProtectHome=yes

3、重新启动 redis

systemctl daemon-reload
systemctl restart redis