I am trying to run keycloak via operator using basically basic approach via operator described on ofc. sides: https://www.keycloak.org/operator/basic-deployment
Everything worked until I started to deploy a keycloak ending with this message:
Caused by: java.lang.IllegalStateException: java.nio.file.FileSystemException: /opt/keycloak/lib/quarkus/build-system.properties: Read-only file system
at io.quarkus.deployment.ExtensionLoader$3.execute(ExtensionLoader.java:858)
at io.quarkus.builder.BuildContext.run(BuildContext.java:256)
at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)
at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2513)
at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1538)
at java.base/java.lang.Thread.run(Thread.java:840)
at org.jboss.threads.JBossThread.run(JBossThread.java:501)
Caused by: java.nio.file.FileSystemException: /opt/keycloak/lib/quarkus/build-system.properties: Read-only file system
at java.base/sun.nio.fs.UnixException.translateToIOException(UnixException.java:100)
at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:106)
at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:111)
at java.base/sun.nio.fs.UnixFileSystemProvider.implDelete(UnixFileSystemProvider.java:248)
at java.base/sun.nio.fs.AbstractFileSystemProvider.delete(AbstractFileSystemProvider.java:105)
at java.base/java.nio.file.Files.delete(Files.java:1152)
at io.quarkus.bootstrap.util.IoUtils.createOrEmptyDir(IoUtils.java:114)
at io.quarkus.deployment.pkg.steps.JarResultBuildStep.buildThinJar(JarResultBuildStep.java:601)
at io.quarkus.deployment.pkg.steps.JarResultBuildStep.buildRunnerJar(JarResultBuildStep.java:224)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at io.quarkus.deployment.ExtensionLoader$3.execute(ExtensionLoader.java:849)
I tried to mount build-system.properties manually like this:
build-system-properties-configmap.yml
apiVersion: v1
data:
build-system.properties: |-
quarkus.application.name=keycloak-quarkus-server-app
quarkus.application.version=24.0.2
quarkus.build.version=3.8.3
quarkus.version=3.8.3
kind: ConfigMap
metadata:
creationTimestamp: null
name: build-system-properties-configmap
kubectl apply -f build-system-properties-configmap.yml
But it ended up with same error.
Any suggestions ?