在docker内部为密码验证配置cassandra.yaml
有人能告诉我如何在docker容器中更改cassandra.yaml吗?在docker内部为密码验证配置cassandra.yaml,docker,cassandra,Docker,Cassandra,有人能告诉我如何在docker容器中更改cassandra.yaml吗? 我想在docker内部为cassandra access启用密码身份验证。您可以创建一个docker入口点(基本上是一个脚本文件,您可以指示docker在容器上复制,它被定义为入口点) 在该文件中,您可以使用sed对cassandra.yaml文件进行任何更改 sed -ri '/^# data_file_directories:/{n;s/^#.*/'" - $CASSANDRA_DATA_DIRECTORY"'/
我想在docker内部为cassandra access启用密码身份验证。您可以创建一个docker入口点(基本上是一个脚本文件,您可以指示docker在容器上复制,它被定义为入口点) 在该文件中,您可以使用sed对cassandra.yaml文件进行任何更改
sed -ri '/^# data_file_directories:/{n;s/^#.*/'" - $CASSANDRA_DATA_DIRECTORY"'/}' "$CASSANDRA_CONFIG/cassandra.yaml"
请注意,$CASSANDRA_DATA_DIRECTORY和$CASSANDRA_CONFIG是一些预先定义的变量。如果您使用的是正式的CASSANDRA Docker映像,那么您已经有了Docker-entrypoint.sh。请参阅:对于一些已经定义的变量,作为示例 要在容器启动时包含这些内容,您可以:
\
广播地址\
广播地址\
[您选择的变量]\
...
环境:
-卡桑德拉种子=DC1C1,DC1C2,DC2C1,DC2C2
-CASSANDRA_CLUSTER_NAME=Dev_CLUSTER
-CASSANDRA_ENDPOINT_SNITCH=闲聊属性文件SNITCH
-CASSANDRA_[您选择的_YAML_变量]
您可以尝试装入外部文件,如中所述
sed -ri '/^# data_file_directories:/{n;s/^#.*/'" - $CASSANDRA_DATA_DIRECTORY"'/}' "$CASSANDRA_CONFIG/cassandra.yaml"