docker compose file:
version: '3'
services:
rabbitmq:
image: rabbitmq:3.9-management
container_name: rabbitmq
user: root
volumes:
- /mnt/d/0tmp/docker/mall-swarm/mydata/rabbitmq/data:/var/lib/rabbitmq #数据文件挂载
- /mnt/d/0tmp/docker/mall-swarm/mydata/rabbitmq/log:/var/log/rabbitmq #日志文件挂载
ports:
- 5672:5672
- 15672:15672
以上配置启动失败:
BOOT FAILED
===========
failed to open log file at '/var/log/rabbitmq/rabbit@9f987b50c687_upgrade.log', reason: permission denied
错误的处理
sudo chmod 777 mydata/rabbitmq -R
同时修改了data
和 log
目录的权限,再次启动失败:
error,"Error when reading /var/lib/rabbitmq/.erlang.cookie: eacces
经过多次尝试发现不应该修改data
目录的权限
正确的处理
只修改log
目录权限
sudo chmod 777 mydata/rabbitmq/log
之后启动正常。
成功运行时挂载目录的权限状态:
lzq@DESKTOP-3IOVF8I:/mnt/d/0tmp/docker/mall-swarm$ sudo ls -al mydata/rabbitmq
total 0
drwxr-xr-x 1 root root 4096 May 24 09:33 .
drwxrwxrwx 1 lzq lzq 4096 May 24 09:33 ..
drwxr-xr-x 1 lxd root 4096 May 24 09:33 data
drwxrwxrwx 1 root root 4096 May 24 09:54 log
lzq@DESKTOP-3IOVF8I:/mnt/d/0tmp/docker/mall-swarm$ sudo ls -al mydata/rabbitmq/data
total 0
drwxr-xr-x 1 lxd root 4096 May 24 09:33 .
drwxr-xr-x 1 root root 4096 May 24 09:33 ..
-r-------- 1 lxd docker 20 May 24 08:00 .erlang.cookie
drwxr-xr-x 1 lxd docker 4096 May 24 09:54 mnesia
lzq@DESKTOP-3IOVF8I:/mnt/d/0tmp/docker/mall-swarm$ sudo ls -al mydata/rabbitmq/log
total 0
drwxrwxrwx 1 root root 4096 May 24 09:54 .
drwxr-xr-x 1 root root 4096 May 24 09:33 ..
-rw-r--r-- 1 lxd docker 0 May 24 09:54 rabbit@9f987b50c687_upgrade.log