我对 docker 还很陌生,对 linux 也还很陌生,所以请多包涵!
我正在尝试让官方的 docker mosquitto 镜像与密码文件配合使用。我的配置文件:
persistence true
persistence_location /mosquitto/data/
listener 1883
password_file /mosquitto/config/mqtt_passwd
我的运行命令:
sudo docker run --rm -i -p 1883:1883 -v /volume1/mosquitto:/mosquitto eclipse-mosquitto:latest
运行时:
1646914188: mosquitto version 2.0.14 starting
1646914188: Config loaded from /mosquitto/config/mosquitto.conf.
1646914188: Error: Unable to open pwfile "/mosquitto/config/mqtt_passwd".
1646914188: Error opening password file "/mosquitto/config/mqtt_passwd".
因此配置文件和密码文件位于同一文件夹中,具有相同的权限:
-rwxrwxrwx+ 1 1883 1883 114 Mar 10 12:09 mosquitto.conf
-rwxrwxrwx+ 1 1883 1883 121 Mar 10 11:14 mqtt_passwd
这个 1883 用户很奇怪。我认为 docker 镜像在启动时会更改权限。容器内的权限是:
---------- 1 mosquitt mosquitt 71 Mar 10 12:18 mosquitto.conf
---------- 1 mosquitt mosquitt 121 Mar 10 11:14 mqtt_passwd
对我来说奇怪的是它可以访问配置文件但不能访问密码文件。
非常感谢你的帮助