我使用模板sso72-x509-postgresql-persistent,它基于Redhat-SSO和Keycloak,在OpenShift中创建应用程序。
我将启用它的相互SSL模式,这样用户只需在其请求中提供他的证书,而不是用户名和密码。文档(https://access.redhat.com/documentation/en-us/red_hat_single_sign-on/7.2/html-single/server_administration_guide/index#x509)告诉我编辑standalone.xml文件以添加配置节。它工作得很好。
但是模板镜像sso72-x509-postgresql-persistent在这个过程中有问题,因为在OpenShift上部署后,在docker重启后,docker中文件的任何更改都会丢失。
除了制作我自己的docker镜像之外,有没有什么办法可以通过命令行或API等其他级别的事情来启用相互SSL模式,而不是编辑配置文件?
发布于 2019-01-29 06:39:57
好的,不管怎样,我都要把它包括进来。由于权限问题,我不能让它工作(挂载的文件没有像以前那样保持相同的权限,所以容器继续失败。但在这个答案中做了大量的工作,所以希望它能为您指明正确的方向!
您可以添加永久卷(PV)以确保您的配置更改在重新启动后仍然有效。您可以通过以下方式将PV添加到您的部署:
,不这样做
oc set volume deploymentconfig sso --add -t pvc --name=sso-config --mount-path=/opt/eap/standalone/configuration --claim-mode=ReadWriteOnce --claim-size=1Gi这将显示带有空白configuration目录的RH-SSO镜像,导致pod卡在Back-off restarting failed container中。相反,您应该做的是:
oc rsync :/opt/eap/standalone/configuration ~/
busybox部署,它可以作为上传配置文件的中介。等待部署完成oc运行busybox --image=busybox --wait -c -- /bin/sh命令“如果为真;执行睡眠10;完成”
busybox部署。等待部署完成oc设置卷部署config busybox --添加模式pvc -- now
busybox pod将配置文件模式添加到新的PV中oc rsync ~/configuration/ :/configuration/
busybox部署--grace-period=0
oc设置卷部署配置sso --添加-t pvc --名称=sso-卷--声明-名称=sso-config配置
一旦您的新部署is...still因权限问题而失败:/
https://stackoverflow.com/questions/54402994
复制相似问题