我试图通过使用docker-compose文件安装Keycloak与SQL数据库服务器。IT运行,但keycloak停止,并出现以下错误。
"ssl-context" => "applicationSSC",
"proxy-address-forwarding" => expression "${env.PROXY_ADDRESS_FORWARDING:false}",
"enable-http2" => true
}, {
"operation" => "add",
"address" => [
("subsystem" => "undertow"),
("server" => "default-server"),
("host" => "default-host")
],
"alias" => ["localhost"]
}, {
"operation" => "add",
"address" => [
("subsystem" => "undertow"),
("server" => "default-server"),
("host" => "default-host"),
("location" => "/")
],
"handler" => "welcome-content"
}, {
"operation" => "add",
"address" => [
("subsystem" => "undertow"),
("server" => "default-server"),
("host" => "default-host"),
("setting" => "http-invoker")
],
"http-authentication-factory" => "application-http-authentication"
}, {
"operation" => "add",
"address" => [
("subsystem" => "undertow"),
("servlet-container" => "default")
]
}, {
"operation" => "add",
"address" => [
("subsystem" => "undertow"),
("servlet-container" => "default"),
("setting" => "jsp")
]
}, {
"operation" => "add",
"address" => [
("subsystem" => "undertow"),
("servlet-container" => "default"),
("setting" => "websockets")
]
}, {
"operation" => "add",
"address" => [
("subsystem" => "undertow"),
("configuration" => "handler"),
("file" => "welcome-content")
],
"path" => expression "${jboss.home.dir}/welcome-content"
}, {
"operation" => "add",
"address" => [
("subsystem" => "undertow"),
("application-security-domain" => "other")
],
"security-domain" => "ApplicationDomain"
}, {
"operation" => "add",
"address" => [("subsystem" => "weld")]
}, {
"operation" => "boottime-controller-initializer-step",
"address" => []
}, {
"operation" => "add-deployer-chains",
"address" => []
}]: java.util.concurrent.RejectedExecutionException
at org.jboss.threads@2.4.0.Final//org.jboss.threads.RejectingExecutor.execute(RejectingExecutor.java:37)
at org.jboss.threads@2.4.0.Final//org.jboss.threads.EnhancedQueueExecutor.rejectShutdown(EnhancedQueueExecutor.java:2029)
at org.jboss.threads@2.4.0.Final//org.jboss.threads.EnhancedQueueExecutor.execute(EnhancedQueueExecutor.java:757)
at org.jboss.as.controller@18.1.0.Final//org.jboss.as.controller.notification.NotificationSupports$NonBlockingNotificationSupport.emit(NotificationSupports.java:95)
at org.jboss.as.controller@18.1.0.Final//org.jboss.as.controller.OperationContextImpl.notifyModificationsComplete(OperationContextImpl.java:517)
at org.jboss.as.controller@18.1.0.Final//org.jboss.as.controller.OperationContextImpl.releaseStepLocks(OperationContextImpl.java:1245)
at org.jboss.as.controller@18.1.0.Final//org.jboss.as.controller.AbstractOperationContext$Step.finalizeInternal(AbstractOperationContext.java:1534)
at org.jboss.as.controller@18.1.0.Final//org.jboss.as.controller.AbstractOperationContext$Step.finalizeStep(AbstractOperationContext.java:1492)
at org.jboss.as.controller@18.1.0.Final//org.jboss.as.controller.AbstractOperationContext$Step.access$400(AbstractOperationContext.java:1356)
at org.jboss.as.controller@18.1.0.Final//org.jboss.as.controller.AbstractOperationContext.executeResultHandlerPhase(AbstractOperationContext.java:910)
at org.jboss.as.controller@18.1.0.Final//org.jboss.as.controller.AbstractOperationContext.processStages(AbstractOperationContext.java:790)
at org.jboss.as.controller@18.1.0.Final//org.jboss.as.controller.AbstractOperationContext.executeOperation(AbstractOperationContext.java:466)
at org.jboss.as.controller@18.1.0.Final//org.jboss.as.controller.OperationContextImpl.executeOperation(OperationContextImpl.java:1427)
at org.jboss.as.controller@18.1.0.Final//org.jboss.as.controller.ModelControllerImpl.boot(ModelControllerImpl.java:559)
at org.jboss.as.controller@18.1.0.Final//org.jboss.as.controller.AbstractControllerService.boot(AbstractControllerService.java:572)
at org.jboss.as.controller@18.1.0.Final//org.jboss.as.controller.AbstractControllerService.boot(AbstractControllerService.java:534)
at org.jboss.as.server@18.1.0.Final//org.jboss.as.server.ServerService.boot(ServerService.java:470)
at org.jboss.as.server@18.1.0.Final//org.jboss.as.server.ServerService.boot(ServerService.java:414)
at org.jboss.as.controller@18.1.0.Final//org.jboss.as.controller.AbstractControllerService$1.run(AbstractControllerService.java:473)
at java.base/java.lang.Thread.run(Thread.java:829)
Suppressed: java.util.concurrent.RejectedExecutionException: Executor is being shut down
at org.jboss.threads@2.4.0.Final//org.jboss.threads.EnhancedQueueExecutor.rejectShutdown(EnhancedQueueExecutor.java:2031)
... 18 more
rUser with username 'admin' already added to '/opt/jboss/keycloak/standalone/configuration/keycloak-add-user.json'
我已经搜索了其他门票,但无法解决这个问题。用户名不是问题,我已删除所有并重试,无法运行。
我的Docker撰写文件如下
version: "3.2"
services:
mssql:
image: mcr.microsoft.com/mssql/server
ports:
- "1433:1433"
environment:
- ACCEPT_EULA=Y
- SA_PASSWORD=Password!23
- MSSQL_PID=Developer
mssqlscripts:
image: mcr.microsoft.com/mssql-tools
depends_on:
- mssql
command: /bin/bash -c 'until /opt/mssql-tools/bin/sqlcmd -S mssql -U sa -P "Password!23" -Q "create database Keycloak"; do sleep 5; done'
keycloak:
image: quay.io/keycloak/keycloak:legacy
depends_on:
- mssql
- mssqlscripts
ports:
- "8443:8080"
environment:
- KEYCLOAK_USER=admin
- KEYCLOAK_PASSWORD=admin
- DB_VENDOR=mssql
- DB_USER=sa
- DB_PASSWORD=Password!23
- DB_ADDR=mssql
- DB_DATABASE=Keycloak
当我试图注释用户名并通过
时"socket-binding" => "https",
"ssl-context" => "applicationSSC",
"proxy-address-forwarding" => expression "${env.PROXY_ADDRESS_FORWARDING:false}",
"enable-http2" => true
}, {
"operation" => "add",
"address" => [
("subsystem" => "undertow"),
("server" => "default-server"),
("host" => "default-host")
],
"alias" => ["localhost"]
}, {
"operation" => "add",
"address" => [
("subsystem" => "undertow"),
("server" => "default-server"),
("host" => "default-host"),
("location" => "/")
],
"handler" => "welcome-content"
}, {
"operation" => "add",
"address" => [
("subsystem" => "undertow"),
("server" => "default-server"),
("host" => "default-host"),
("setting" => "http-invoker")
],
"http-authentication-factory" => "application-http-authentication"
}, {
"operation" => "add",
"address" => [
("subsystem" => "undertow"),
("servlet-container" => "default")
]
}, {
"operation" => "add",
"address" => [
("subsystem" => "undertow"),
("servlet-container" => "default"),
("setting" => "jsp")
]
}, {
"operation" => "add",
"address" => [
("subsystem" => "undertow"),
("servlet-container" => "default"),
("setting" => "websockets")
]
}, {
"operation" => "add",
"address" => [
("subsystem" => "undertow"),
("configuration" => "handler"),
("file" => "welcome-content")
],
"path" => expression "${jboss.home.dir}/welcome-content"
}, {
"operation" => "add",
"address" => [
("subsystem" => "undertow"),
("application-security-domain" => "other")
],
"security-domain" => "ApplicationDomain"
}, {
"operation" => "add",
"address" => [("subsystem" => "weld")]
}, {
"operation" => "boottime-controller-initializer-step",
"address" => []
}, {
"operation" => "add-deployer-chains",
"address" => []
}]: java.util.concurrent.RejectedExecutionException
at org.jboss.threads@2.4.0.Final//org.jboss.threads.RejectingExecutor.execute(RejectingExecutor.java:37)
at org.jboss.threads@2.4.0.Final//org.jboss.threads.EnhancedQueueExecutor.rejectShutdown(EnhancedQueueExecutor.java:2029)
at org.jboss.threads@2.4.0.Final//org.jboss.threads.EnhancedQueueExecutor.execute(EnhancedQueueExecutor.java:757)
at org.jboss.as.controller@18.1.0.Final//org.jboss.as.controller.notification.NotificationSupports$NonBlockingNotificationSupport.emit(NotificationSupports.java:95)
at org.jboss.as.controller@18.1.0.Final//org.jboss.as.controller.OperationContextImpl.notifyModificationsComplete(OperationContextImpl.java:517)
at org.jboss.as.controller@18.1.0.Final//org.jboss.as.controller.OperationContextImpl.releaseStepLocks(OperationContextImpl.java:1245)
at org.jboss.as.controller@18.1.0.Final//org.jboss.as.controller.AbstractOperationContext$Step.finalizeInternal(AbstractOperationContext.java:1534)
at org.jboss.as.controller@18.1.0.Final//org.jboss.as.controller.AbstractOperationContext$Step.finalizeStep(AbstractOperationContext.java:1492)
at org.jboss.as.controller@18.1.0.Final//org.jboss.as.controller.AbstractOperationContext$Step.access$400(AbstractOperationContext.java:1356)
at org.jboss.as.controller@18.1.0.Final//org.jboss.as.controller.AbstractOperationContext.executeResultHandlerPhase(AbstractOperationContext.java:910)
at org.jboss.as.controller@18.1.0.Final//org.jboss.as.controller.AbstractOperationContext.processStages(AbstractOperationContext.java:790)
at org.jboss.as.controller@18.1.0.Final//org.jboss.as.controller.AbstractOperationContext.executeOperation(AbstractOperationContext.java:466)
at org.jboss.as.controller@18.1.0.Final//org.jboss.as.controller.OperationContextImpl.executeOperation(OperationContextImpl.java:1427)
at org.jboss.as.controller@18.1.0.Final//org.jboss.as.controller.ModelControllerImpl.boot(ModelControllerImpl.java:559)
at org.jboss.as.controller@18.1.0.Final//org.jboss.as.controller.AbstractControllerService.boot(AbstractControllerService.java:572)
at org.jboss.as.controller@18.1.0.Final//org.jboss.as.controller.AbstractControllerService.boot(AbstractControllerService.java:534)
at org.jboss.as.server@18.1.0.Final//org.jboss.as.server.ServerService.boot(ServerService.java:470)
at org.jboss.as.server@18.1.0.Final//org.jboss.as.server.ServerService.boot(ServerService.java:414)
at org.jboss.as.controller@18.1.0.Final//org.jboss.as.controller.AbstractControllerService$1.run(AbstractControllerService.java:473)
at java.base/java.lang.Thread.run(Thread.java:829)
Suppressed: java.util.concurrent.RejectedExecutionException: Executor is being shut down
at org.jboss.threads@2.4.0.Final//org.jboss.threads.EnhancedQueueExecutor.rejectShutdown(EnhancedQueueExecutor.java:2031)
... 18 more
在Docker中,keyclick的工作方式与k8s不同。Docker编写文件是一步一步运行的,如果你运行文件,它就会用用户名和密码填充数据库。现在有两种选择,一种是在每次尝试失败后尝试添加不同的用户名和密码。另一种选择是在每次运行失败后尝试之前清理数据库,以避免已经添加了错误用户。我希望这对你有帮助。