如何在cassandra的docker实例中启用用户定义的函数?
当我尝试在cassandra中创build一个简单的减法函数时出现以下错误:
user defined functions are disabled in cassandra.yaml set enable user defined functions=true
我无法弄清楚如何将其设置为true。 我去哪里做这个? 我正在运行cassandra的docker实例,这使得它更加困难。
您需要修改Dockerfile中的cassandra.yaml文件。 您可以创build一个单独的图层作为原始Cassandra图像的扩展(更多此处 )。
假设您正在使用Cassandra 3,并且从软件包安装中安装,则其位置是:
/etc/cassandra/cassandra.yaml
其他可能的位置用于不同的安装选项(压缩包等)在这里logging 。 如果你正在运行这个 Docker镜像,你应该可以在/ etc / cassandra中find它。
一旦找出了安装的path,可以使用sed来更改文件。 使用Docker的RUN命令运行它:
RUN sed -i -r 's/enable_user_defined_functions=false/enable_user_defined_functions=true/' /etc/cassandra/cassandra.yaml
然后重新启动节点。