今天让docker挂载外部的redis.conf配置文件启动redis,但是启动之后容器立马退出。
docker run -p 6379:6379 -d -v /root/redisconf:/usr/local/etc/redis --name myredis redis:6.2.3 redis-server /usr/local/etc/redis/redis.conf
参数说明:
-p 6379:6379 指定端口映射 -d 以守护进程的方式启动容器 -v 指定数据卷绑定 –name myredis 指定容器名称 /root/redisconf 宿主机的redis.conf配置文件所在的文件夹 /usr/local/etc/redis redis-server /usr/local/etc/redis/redis.conf 指定配置文件启动redis-server进程 -v /root/redisconf:/usr/local/etc/redis 把宿主机配置好的redis.conf映射到容器内的/usr/local/etc/redis目录中
我们查询redis容器的日志
docker logs 8acc8c2c918d1834b7b3bd928e498a209b10bbf9efe39d4c89024c9e33d8552c
发现,没有对宿主机redis.conf文件的操作权限
在容器启动的时候加上--privileged=true
参数即可
docker run --privileged=true -p 6379:6379 -d -v /root/redisconf:/usr/local/etc/redis --name myredis redis:6.2.3 redis-server /usr/local/etc/redis/redis.conf
可以看到,容器成功启动。
ps:几乎每天都会遇到一个很难解决的Bug,再这样下去要掉头发了