EMQX5.8.4在容器部署时,初始化配置文件被覆盖。请问该如何解决?
或者能否通过命令之类的其他方式来配置初始的客户端即权限认证
你怎么配置的,在哪里覆盖了,能展开说说么
预置了一份config文件,把它放在容器指定路径,启动镜像后把预置的config文件夹里的预置文件覆盖成掉了
能说的具体一点吗
镜像运行启动之后,会生成config文件夹,里面存着cluster.hocon文件,这个文件里是EMQX的认证相关配置。我在通过镜像创建容器时,先把一个我改了内容的cluster.hocon文件放在指定目录,设想的是这样就会加载我在cluster.hocon中的配置。但是实际上镜像跑完之后,我自己的cluster.hocon文件被覆盖成EMQX的原始文件了
我猜你说的原始文件是etc/emqx.conf 这都没有认证相关的配置,不明白为什么会覆盖。
还有一点值得注意的是一定要把data目录给挂载出去,否则,你在容器里面改了之后 重启也是会还原的。
ps 如果是集群的话,得改所有的cluster.hocon
请问容器化部署,应该如何正确进行初始化客户端和权限的配置,我这边是mysql认证
初始化的配置推荐方式:
- 环境变量来设置。
- 设置在etc/base.conf 里面。(挂载出来)
- 把 etc/emqx.conf copy 出来,然后直接写在这里面。(挂载出来)
- 在 data/configs/cluster.hocon中直接修改。
4 种方式只选一种就行了。推荐 1》2》3》4 如果用了多种方式配置,那就要注意配置的覆盖优先级。
base.hocon < cluster.hocon < emqx.conf < 环境变量