gpt4 book ai didi

kubernetes - Kubernetes-设置系统属性

转载 作者:行者123 更新时间:2023-12-02 11:58:34 24 4
gpt4 key购买 nike

我有一个使用JAAS身份验证的Java应用程序,因此它需要以下系统属性。

-Djava.security.auth.login.config=/jaas/conf/client_jaas.conf



我们通过JAVA_OPTS在启动脚本中设置此系统属性。

JAVA_OPTS="${JAVA_OPTS} -Djava.security.auth.login.config=/jaas/conf/client_jaas.conf"



我正在尝试将此应用移动到Kubernetes并进行如下设置。
"containers": [
{
"env": [
{
"name": "JAVA_OPTS",
"value": "-Djava.security.auth.login.config=/jaas/conf/client_jaas.conf"
},

但是,我的应用程序日志中出现以下错误。
Caused by: java.lang.IllegalArgumentException: Could not find a 'appClient' entry in the JAAS configuration. System property 'java.security.auth.login.config' is not set

还有其他设置方式吗?

谢谢

最佳答案

我不知道这是否与以下内容有关:JAVA_OPTS不是开箱即用的环境变量,而是约定。如果您看看this example Dockerfile

FROM openjdk:8-jre-alpine

ENV SPRING_OUTPUT_ANSI_ENABLED=ALWAYS \
JHIPSTER_SLEEP=0 \
JAVA_OPTS=""

# add directly the war
ADD *.war /app.war

EXPOSE 8081
CMD echo "The application will start in ${JHIPSTER_SLEEP}s..." && \
sleep ${JHIPSTER_SLEEP} && \
java ${JAVA_OPTS} -Djava.security.egd=file:/dev/./urandom -jar /app.war

您会看到JAVA_OPTS首先被定义为变量,随后被用于java命令本身。使用此配置,您便可以使用ENV变量传递自定义Java选项。

所以我假设您在kubernetes中正确完成了所有操作,但是底层的docker镜像无法正确处理它

关于kubernetes - Kubernetes-设置系统属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49742493/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com