Skip to content

Conversation

@smalho01
Copy link
Collaborator

No description provided.

@smalho01 smalho01 changed the title docker dev env files moverd from DRLS-Docker repo docker dev env files moved from DRLS-Docker repo Nov 16, 2021
@danlee1025
Copy link

Overall I think this looks pretty good. Can you add some instruction in the README for which guide to look at depending on how the user wants to run the docker instances?

@KeeyanGhoreshi
Copy link
Contributor

I still can't get this to work, I get an error when running docker-sync-stack start, with the following error:

Traceback (most recent call last):
	3: from /Library/Ruby/Gems/2.6.0/gems/docker-sync-0.7.0/tasks/stack/stack.thor:51:in `block in start'
	2: from /Library/Ruby/Gems/2.6.0/gems/docker-sync-0.7.0/lib/docker-sync/compose.rb:42:in `run'
	1: from /Library/Ruby/Gems/2.6.0/gems/docker-compose-1.1.12/lib/docker/compose/session.rb:98:in `up'
/Library/Ruby/Gems/2.6.0/gems/docker-compose-1.1.12/lib/docker/compose/session.r[+] Building 0.0s (0/0)                                                          (Docker::Compose::Error)
EXCEPTION: #<Docker::Compose::Error: 'up' failed with status 'pid 99140 exit 17'

ruby -v returns ruby 2.7.2p137
which ruby returns /Users/kghoreshi/.rbenv/shims/ruby

Not sure what the issue is.

@smalho01
Copy link
Collaborator Author

smalho01 commented Nov 22, 2021

I still can't get this to work, I get an error when running docker-sync-stack start, with the following error:

Traceback (most recent call last):
	3: from /Library/Ruby/Gems/2.6.0/gems/docker-sync-0.7.0/tasks/stack/stack.thor:51:in `block in start'
	2: from /Library/Ruby/Gems/2.6.0/gems/docker-sync-0.7.0/lib/docker-sync/compose.rb:42:in `run'
	1: from /Library/Ruby/Gems/2.6.0/gems/docker-compose-1.1.12/lib/docker/compose/session.rb:98:in `up'
/Library/Ruby/Gems/2.6.0/gems/docker-compose-1.1.12/lib/docker/compose/session.r[+] Building 0.0s (0/0)                                                          (Docker::Compose::Error)
EXCEPTION: #<Docker::Compose::Error: 'up' failed with status 'pid 99140 exit 17'

ruby -v returns ruby 2.7.2p137 which ruby returns /Users/kghoreshi/.rbenv/shims/ruby

Not sure what the issue is.

hmm, not sure why its failing, seems like something wrong with docker-compose. @KeeyanGhoreshi Can you try running docker-sync start followed by docker-compose -f docker-compose-dev.yml up once that finishes up? May get more error logging that way that could identify the issue.

@KeeyanGhoreshi
Copy link
Contributor

ok doing that gets it to run, and I can open DTR and register a client and visit the request generator, but searching for patients gives a network failure.

From the docker-compose up logs:

rems_prod_test-ehr               | FAILURE: Build failed with an exception.
rems_prod_test-ehr               | 
rems_prod_test-ehr               | * What went wrong:
rems_prod_test-ehr               | Gradle build daemon disappeared unexpectedly (it may have been killed or may have crashed)

@smalho01
Copy link
Collaborator Author

smalho01 commented Nov 22, 2021

ok doing that gets it to run, and I can open DTR and register a client and visit the request generator, but searching for patients gives a network failure.

From the docker-compose up logs:

rems_prod_test-ehr               | FAILURE: Build failed with an exception.
rems_prod_test-ehr               | 
rems_prod_test-ehr               | * What went wrong:
rems_prod_test-ehr               | Gradle build daemon disappeared unexpectedly (it may have been killed or may have crashed)

@KeeyanGhoreshi you need to specify the -f filed for docker-compose, I mistyped the command without that flag at first. The "rems_prod_" prefix means you're using the default docker compose script, which is supposed to be for production and use published images. Can you try it again with the -f docker-compose-dev.yml flag? Though, that said gradle shouldn't be failing to build with those images either. I'll double check the published images.

Edit: I think the reason your build is failing is you may not be giving docker desktop enough resources. Did you do the following part of the set up guide when setting up docker desktop?

  1. Configure Docker to have access to enough resources. To do this, open Docker Desktop and select Settings > Resources.

    The defaults for memory at 2GB and possibly CPU as well are too low to run the entire DRLS REMS workflow. If not enough resources are provided, you may notice containers unexpectedly crashing and stopping. Exact requirements for these resource values will depend on your machine. That said, as a baseline starting point, the system runs relatively smoothly at 15GB memory and 7 CPU Processors on MITRE issued Mac Devices.

@KeeyanGhoreshi
Copy link
Contributor

I had not turned the memory up, missed that part of the instructions. With increased memory running docker-compose -f docker-compose-dev.yml up returns:

failed to solve: rpc error: code = Unknown desc = failed to solve with frontend dockerfile.v0: failed to read dockerfile: open /var/lib/docker/tmp/buildkit-mount146261203/Dockerfile.dev: no such file or directory

Running docker-compose up, the test-ehr seems to be running fine but now it fails on keycloak. When I click on the lab form to open DTR I get This site can’t be reached when it redirects to auth.

@KeeyanGhoreshi
Copy link
Contributor

The stacktrace from keycloak:

rems_prod_keycloak               | 21:28:42,428 INFO  [org.keycloak.connections.jpa.updater.liquibase.LiquibaseJpaUpdaterProvider] (ServerService Thread Pool -- 61) Updating database. Using changelog META-INF/jpa-changelog-master.xml
rems_prod_keycloak               | 21:28:42,494 ERROR [org.keycloak.connections.jpa.updater.liquibase.conn.DefaultLiquibaseConnectionProvider] (ServerService Thread Pool -- 61) Change Set META-INF/jpa-changelog-1.5.0.xml::1.5.0::bburke@redhat.com failed.  Error: Column "USER_SETUP_ALLOWED" not found; SQL statement:
rems_prod_keycloak               | ALTER TABLE PUBLIC.AUTHENTICATION_EXECUTION ALTER COLUMN  USER_SETUP_ALLOWED SET DEFAULT NULL [42122-193] [Failed SQL: ALTER TABLE PUBLIC.AUTHENTICATION_EXECUTION ALTER COLUMN  USER_SETUP_ALLOWED SET DEFAULT NULL]
rems_prod_keycloak               | 21:28:42,526 ERROR [org.jboss.msc.service.fail] (ServerService Thread Pool -- 61) MSC000001: Failed to start service jboss.deployment.unit."keycloak-server.war".undertow-deployment: org.jboss.msc.service.StartException in service jboss.deployment.unit."keycloak-server.war".undertow-deployment: java.lang.RuntimeException: RESTEASY003325: Failed to construct public org.keycloak.services.resources.KeycloakApplication(javax.servlet.ServletContext,org.jboss.resteasy.core.Dispatcher)
rems_prod_keycloak               | 	at org.wildfly.extension.undertow@17.0.1.Final//org.wildfly.extension.undertow.deployment.UndertowDeploymentService$1.run(UndertowDeploymentService.java:81)
rems_prod_keycloak               | 	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
rems_prod_keycloak               | 	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
rems_prod_keycloak               | 	at org.jboss.threads@2.3.3.Final//org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
rems_prod_keycloak               | 	at org.jboss.threads@2.3.3.Final//org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1982)
rems_prod_keycloak               | 	at org.jboss.threads@2.3.3.Final//org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1486)
rems_prod_keycloak               | 	at org.jboss.threads@2.3.3.Final//org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1377)
rems_prod_keycloak               | 	at java.base/java.lang.Thread.run(Thread.java:834)
rems_prod_keycloak               | 	at org.jboss.threads@2.3.3.Final//org.jboss.threads.JBossThread.run(JBossThread.java:485)
rems_prod_keycloak               | Caused by: java.lang.RuntimeException: RESTEASY003325: Failed to construct public org.keycloak.services.resources.KeycloakApplication(javax.servlet.ServletContext,org.jboss.resteasy.core.Dispatcher)
rems_prod_keycloak               | 	at org.jboss.resteasy.resteasy-jaxrs@3.7.0.Final//org.jboss.resteasy.core.ConstructorInjectorImpl.construct(ConstructorInjectorImpl.java:164)
rems_prod_keycloak               | 	at org.jboss.resteasy.resteasy-jaxrs@3.7.0.Final//org.jboss.resteasy.spi.ResteasyProviderFactory.createProviderInstance(ResteasyProviderFactory.java:2784)
rems_prod_keycloak               | 	at org.jboss.resteasy.resteasy-jaxrs@3.7.0.Final//org.jboss.resteasy.spi.ResteasyDeployment.createApplication(ResteasyDeployment.java:364)
rems_prod_keycloak               | 	at org.jboss.resteasy.resteasy-jaxrs@3.7.0.Final//org.jboss.resteasy.spi.ResteasyDeployment.startInternal(ResteasyDeployment.java:277)
rems_prod_keycloak               | 	at org.jboss.resteasy.resteasy-jaxrs@3.7.0.Final//org.jboss.resteasy.spi.ResteasyDeployment.start(ResteasyDeployment.java:89)
rems_prod_keycloak               | 	at org.jboss.resteasy.resteasy-jaxrs@3.7.0.Final//org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.init(ServletContainerDispatcher.java:119)
rems_prod_keycloak               | 	at org.jboss.resteasy.resteasy-jaxrs@3.7.0.Final//org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.init(HttpServletDispatcher.java:36)
rems_prod_keycloak               | 	at io.undertow.servlet@2.0.21.Final//io.undertow.servlet.core.LifecyleInterceptorInvocation.proceed(LifecyleInterceptorInvocation.java:117)
rems_prod_keycloak               | 	at org.wildfly.extension.undertow@17.0.1.Final//org.wildfly.extension.undertow.security.RunAsLifecycleInterceptor.init(RunAsLifecycleInterceptor.java:78)
rems_prod_keycloak               | 	at io.undertow.servlet@2.0.21.Final//io.undertow.servlet.core.LifecyleInterceptorInvocation.proceed(LifecyleInterceptorInvocation.java:103)
rems_prod_keycloak               | 	at io.undertow.servlet@2.0.21.Final//io.undertow.servlet.core.ManagedServlet$DefaultInstanceStrategy.start(ManagedServlet.java:303)
rems_prod_keycloak               | 	at io.undertow.servlet@2.0.21.Final//io.undertow.servlet.core.ManagedServlet.createServlet(ManagedServlet.java:143)
rems_prod_keycloak               | 	at io.undertow.servlet@2.0.21.Final//io.undertow.servlet.core.DeploymentManagerImpl$2.call(DeploymentManagerImpl.java:583)
rems_prod_keycloak               | 	at io.undertow.servlet@2.0.21.Final//io.undertow.servlet.core.DeploymentManagerImpl$2.call(DeploymentManagerImpl.java:554)
rems_prod_keycloak               | 	at io.undertow.servlet@2.0.21.Final//io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:42)
rems_prod_keycloak               | 	at io.undertow.servlet@2.0.21.Final//io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
rems_prod_keycloak               | 	at org.wildfly.extension.undertow@17.0.1.Final//org.wildfly.extension.undertow.security.SecurityContextThreadSetupAction.lambda$create$0(SecurityContextThreadSetupAction.java:105)
rems_prod_keycloak               | 	at org.wildfly.extension.undertow@17.0.1.Final//org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1502)
rems_prod_keycloak               | 	at org.wildfly.extension.undertow@17.0.1.Final//org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1502)
rems_prod_keycloak               | 	at org.wildfly.extension.undertow@17.0.1.Final//org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1502)
rems_prod_keycloak               | 	at org.wildfly.extension.undertow@17.0.1.Final//org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1502)
rems_prod_keycloak               | 	at io.undertow.servlet@2.0.21.Final//io.undertow.servlet.core.DeploymentManagerImpl.start(DeploymentManagerImpl.java:596)
rems_prod_keycloak               | 	at org.wildfly.extension.undertow@17.0.1.Final//org.wildfly.extension.undertow.deployment.UndertowDeploymentService.startContext(UndertowDeploymentService.java:97)
rems_prod_keycloak               | 	at org.wildfly.extension.undertow@17.0.1.Final//org.wildfly.extension.undertow.deployment.UndertowDeploymentService$1.run(UndertowDeploymentService.java:78)
rems_prod_keycloak               | 	... 8 more
rems_prod_keycloak               | Caused by: java.lang.RuntimeException: Failed to update database
rems_prod_keycloak               | 	at org.keycloak.keycloak-model-jpa@7.0.1//org.keycloak.connections.jpa.updater.liquibase.LiquibaseJpaUpdaterProvider.update(LiquibaseJpaUpdaterProvider.java:116)
rems_prod_keycloak               | 	at org.keycloak.keycloak-model-jpa@7.0.1//org.keycloak.connections.jpa.updater.liquibase.LiquibaseJpaUpdaterProvider.update(LiquibaseJpaUpdaterProvider.java:81)
rems_prod_keycloak               | 	at org.keycloak.keycloak-model-jpa@7.0.1//org.keycloak.connections.jpa.DefaultJpaConnectionProviderFactory$2.run(DefaultJpaConnectionProviderFactory.java:336)
rems_prod_keycloak               | 	at org.keycloak.keycloak-server-spi-private@7.0.1//org.keycloak.models.utils.KeycloakModelUtils.runJobInTransaction(KeycloakModelUtils.java:227)
rems_prod_keycloak               | 	at org.keycloak.keycloak-model-jpa@7.0.1//org.keycloak.connections.jpa.DefaultJpaConnectionProviderFactory.update(DefaultJpaConnectionProviderFactory.java:329)
rems_prod_keycloak               | 	at org.keycloak.keycloak-model-jpa@7.0.1//org.keycloak.connections.jpa.DefaultJpaConnectionProviderFactory.migration(DefaultJpaConnectionProviderFactory.java:317)
rems_prod_keycloak               | 	at org.keycloak.keycloak-model-jpa@7.0.1//org.keycloak.connections.jpa.DefaultJpaConnectionProviderFactory.lambda$lazyInit$0(DefaultJpaConnectionProviderFactory.java:182)
rems_prod_keycloak               | 	at org.keycloak.keycloak-server-spi-private@7.0.1//org.keycloak.models.utils.KeycloakModelUtils.suspendJtaTransaction(KeycloakModelUtils.java:682)
rems_prod_keycloak               | 	at org.keycloak.keycloak-model-jpa@7.0.1//org.keycloak.connections.jpa.DefaultJpaConnectionProviderFactory.lazyInit(DefaultJpaConnectionProviderFactory.java:133)
rems_prod_keycloak               | 	at org.keycloak.keycloak-model-jpa@7.0.1//org.keycloak.connections.jpa.DefaultJpaConnectionProviderFactory.create(DefaultJpaConnectionProviderFactory.java:81)
rems_prod_keycloak               | 	at org.keycloak.keycloak-model-jpa@7.0.1//org.keycloak.connections.jpa.DefaultJpaConnectionProviderFactory.create(DefaultJpaConnectionProviderFactory.java:59)
rems_prod_keycloak               | 	at org.keycloak.keycloak-services@7.0.1//org.keycloak.services.DefaultKeycloakSession.getProvider(DefaultKeycloakSession.java:195)
rems_prod_keycloak               | 	at org.keycloak.keycloak-model-jpa@7.0.1//org.keycloak.models.jpa.JpaRealmProviderFactory.create(JpaRealmProviderFactory.java:51)
rems_prod_keycloak               | 	at org.keycloak.keycloak-model-jpa@7.0.1//org.keycloak.models.jpa.JpaRealmProviderFactory.create(JpaRealmProviderFactory.java:33)
rems_prod_keycloak               | 	at org.keycloak.keycloak-services@7.0.1//org.keycloak.services.DefaultKeycloakSession.getProvider(DefaultKeycloakSession.java:195)
rems_prod_keycloak               | 	at org.keycloak.keycloak-services@7.0.1//org.keycloak.services.DefaultKeycloakSession.realmLocalStorage(DefaultKeycloakSession.java:152)
rems_prod_keycloak               | 	at org.keycloak.keycloak-model-infinispan@7.0.1//org.keycloak.models.cache.infinispan.RealmCacheSession.getRealmDelegate(RealmCacheSession.java:148)
rems_prod_keycloak               | 	at org.keycloak.keycloak-model-infinispan@7.0.1//org.keycloak.models.cache.infinispan.RealmCacheSession.getMigrationModel(RealmCacheSession.java:141)
rems_prod_keycloak               | 	at org.keycloak.keycloak-server-spi-private@7.0.1//org.keycloak.migration.MigrationModelManager.migrate(MigrationModelManager.java:89)
rems_prod_keycloak               | 	at org.keycloak.keycloak-services@7.0.1//org.keycloak.services.resources.KeycloakApplication.migrateModel(KeycloakApplication.java:246)
rems_prod_keycloak               | 	at org.keycloak.keycloak-services@7.0.1//org.keycloak.services.resources.KeycloakApplication.migrateAndBootstrap(KeycloakApplication.java:187)
rems_prod_keycloak               | 	at org.keycloak.keycloak-services@7.0.1//org.keycloak.services.resources.KeycloakApplication$1.run(KeycloakApplication.java:146)
rems_prod_keycloak               | 	at org.keycloak.keycloak-server-spi-private@7.0.1//org.keycloak.models.utils.KeycloakModelUtils.runJobInTransaction(KeycloakModelUtils.java:227)
rems_prod_keycloak               | 	at org.keycloak.keycloak-services@7.0.1//org.keycloak.services.resources.KeycloakApplication.<init>(KeycloakApplication.java:137)
rems_prod_keycloak               | 	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
rems_prod_keycloak               | 	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
rems_prod_keycloak               | 	at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
rems_prod_keycloak               | 	at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
rems_prod_keycloak               | 	at org.jboss.resteasy.resteasy-jaxrs@3.7.0.Final//org.jboss.resteasy.core.ConstructorInjectorImpl.construct(ConstructorInjectorImpl.java:152)
rems_prod_keycloak               | 	... 31 more
rems_prod_keycloak               | Caused by: liquibase.exception.MigrationFailedException: Migration failed for change set META-INF/jpa-changelog-1.5.0.xml::1.5.0::bburke@redhat.com:
rems_prod_keycloak               |      Reason: liquibase.exception.DatabaseException: Column "USER_SETUP_ALLOWED" not found; SQL statement:
rems_prod_keycloak               | ALTER TABLE PUBLIC.AUTHENTICATION_EXECUTION ALTER COLUMN  USER_SETUP_ALLOWED SET DEFAULT NULL [42122-193] [Failed SQL: ALTER TABLE PUBLIC.AUTHENTICATION_EXECUTION ALTER COLUMN  USER_SETUP_ALLOWED SET DEFAULT NULL]
rems_prod_keycloak               | 	at org.liquibase//liquibase.changelog.ChangeSet.execute(ChangeSet.java:619)
rems_prod_keycloak               | 	at org.liquibase//liquibase.changelog.visitor.UpdateVisitor.visit(UpdateVisitor.java:51)
rems_prod_keycloak               | 	at org.liquibase//liquibase.changelog.ChangeLogIterator.run(ChangeLogIterator.java:79)
rems_prod_keycloak               | 	at org.liquibase//liquibase.Liquibase.update(Liquibase.java:214)
rems_prod_keycloak               | 	at org.liquibase//liquibase.Liquibase.update(Liquibase.java:192)
rems_prod_keycloak               | 	at org.liquibase//liquibase.Liquibase.update(Liquibase.java:188)
rems_prod_keycloak               | 	at org.keycloak.keycloak-model-jpa@7.0.1//org.keycloak.connections.jpa.updater.liquibase.LiquibaseJpaUpdaterProvider.updateChangeSet(LiquibaseJpaUpdaterProvider.java:182)
rems_prod_keycloak               | 	at org.keycloak.keycloak-model-jpa@7.0.1//org.keycloak.connections.jpa.updater.liquibase.LiquibaseJpaUpdaterProvider.update(LiquibaseJpaUpdaterProvider.java:102)
rems_prod_keycloak               | 	... 59 more
rems_prod_keycloak               | Caused by: liquibase.exception.DatabaseException: Column "USER_SETUP_ALLOWED" not found; SQL statement:
rems_prod_keycloak               | ALTER TABLE PUBLIC.AUTHENTICATION_EXECUTION ALTER COLUMN  USER_SETUP_ALLOWED SET DEFAULT NULL [42122-193] [Failed SQL: ALTER TABLE PUBLIC.AUTHENTICATION_EXECUTION ALTER COLUMN  USER_SETUP_ALLOWED SET DEFAULT NULL]
rems_prod_keycloak               | 	at org.liquibase//liquibase.executor.jvm.JdbcExecutor$ExecuteStatementCallback.doInStatement(JdbcExecutor.java:309)
rems_prod_keycloak               | 	at org.liquibase//liquibase.executor.jvm.JdbcExecutor.execute(JdbcExecutor.java:55)
rems_prod_keycloak               | 	at org.liquibase//liquibase.executor.jvm.JdbcExecutor.execute(JdbcExecutor.java:113)
rems_prod_keycloak               | 	at org.liquibase//liquibase.database.AbstractJdbcDatabase.execute(AbstractJdbcDatabase.java:1277)
rems_prod_keycloak               | 	at org.liquibase//liquibase.database.AbstractJdbcDatabase.executeStatements(AbstractJdbcDatabase.java:1259)
rems_prod_keycloak               | 	at org.liquibase//liquibase.changelog.ChangeSet.execute(ChangeSet.java:582)
rems_prod_keycloak               | 	... 66 more
rems_prod_keycloak               | Caused by: org.h2.jdbc.JdbcSQLException: Column "USER_SETUP_ALLOWED" not found; SQL statement:
rems_prod_keycloak               | ALTER TABLE PUBLIC.AUTHENTICATION_EXECUTION ALTER COLUMN  USER_SETUP_ALLOWED SET DEFAULT NULL [42122-193]
rems_prod_keycloak               | 	at com.h2database.h2@1.4.193//org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
rems_prod_keycloak               | 	at com.h2database.h2@1.4.193//org.h2.message.DbException.get(DbException.java:179)
rems_prod_keycloak               | 	at com.h2database.h2@1.4.193//org.h2.message.DbException.get(DbException.java:155)
rems_prod_keycloak               | 	at com.h2database.h2@1.4.193//org.h2.table.Table.getColumn(Table.java:682)
rems_prod_keycloak               | 	at com.h2database.h2@1.4.193//org.h2.command.Parser.columnIfTableExists(Parser.java:5681)
rems_prod_keycloak               | 	at com.h2database.h2@1.4.193//org.h2.command.Parser.parseAlterTable(Parser.java:5585)
rems_prod_keycloak               | 	at com.h2database.h2@1.4.193//org.h2.command.Parser.parseAlter(Parser.java:4844)
rems_prod_keycloak               | 	at com.h2database.h2@1.4.193//org.h2.command.Parser.parsePrepared(Parser.java:344)
rems_prod_keycloak               | 	at com.h2database.h2@1.4.193//org.h2.command.Parser.parse(Parser.java:317)
rems_prod_keycloak               | 	at com.h2database.h2@1.4.193//org.h2.command.Parser.parse(Parser.java:289)
rems_prod_keycloak               | 	at com.h2database.h2@1.4.193//org.h2.command.Parser.prepareCommand(Parser.java:254)
rems_prod_keycloak               | 	at com.h2database.h2@1.4.193//org.h2.engine.Session.prepareLocal(Session.java:561)
rems_prod_keycloak               | 	at com.h2database.h2@1.4.193//org.h2.engine.Session.prepareCommand(Session.java:502)
rems_prod_keycloak               | 	at com.h2database.h2@1.4.193//org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1203)
rems_prod_keycloak               | 	at com.h2database.h2@1.4.193//org.h2.jdbc.JdbcStatement.executeInternal(JdbcStatement.java:170)
rems_prod_keycloak               | 	at com.h2database.h2@1.4.193//org.h2.jdbc.JdbcStatement.execute(JdbcStatement.java:158)
rems_prod_keycloak               | 	at org.jboss.ironjacamar.jdbcadapters@1.4.16.Final//org.jboss.jca.adapters.jdbc.WrappedStatement.execute(WrappedStatement.java:198)
rems_prod_keycloak               | 	at org.liquibase//liquibase.executor.jvm.JdbcExecutor$ExecuteStatementCallback.doInStatement(JdbcExecutor.java:307)
rems_prod_keycloak               | 	... 71 more
rems_prod_keycloak               | 
rems_prod_keycloak               | 21:28:42,560 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("add") failed - address: ([("deployment" => "keycloak-server.war")]) - failure description: {"WFLYCTL0080: Failed services" => {"jboss.deployment.unit.\"keycloak-server.war\".undertow-deployment" => "java.lang.RuntimeException: RESTEASY003325: Failed to construct public org.keycloak.services.resources.KeycloakApplication(javax.servlet.ServletContext,org.jboss.resteasy.core.Dispatcher)
rems_prod_keycloak               |     Caused by: java.lang.RuntimeException: RESTEASY003325: Failed to construct public org.keycloak.services.resources.KeycloakApplication(javax.servlet.ServletContext,org.jboss.resteasy.core.Dispatcher)
rems_prod_keycloak               |     Caused by: java.lang.RuntimeException: Failed to update database
rems_prod_keycloak               |     Caused by: liquibase.exception.MigrationFailedException: Migration failed for change set META-INF/jpa-changelog-1.5.0.xml::1.5.0::bburke@redhat.com:
rems_prod_keycloak               |      Reason: liquibase.exception.DatabaseException: Column \"USER_SETUP_ALLOWED\" not found; SQL statement:
rems_prod_keycloak               | ALTER TABLE PUBLIC.AUTHENTICATION_EXECUTION ALTER COLUMN  USER_SETUP_ALLOWED SET DEFAULT NULL [42122-193] [Failed SQL: ALTER TABLE PUBLIC.AUTHENTICATION_EXECUTION ALTER COLUMN  USER_SETUP_ALLOWED SET DEFAULT NULL]
rems_prod_keycloak               |     Caused by: liquibase.exception.DatabaseException: Column \"USER_SETUP_ALLOWED\" not found; SQL statement:
rems_prod_keycloak               | ALTER TABLE PUBLIC.AUTHENTICATION_EXECUTION ALTER COLUMN  USER_SETUP_ALLOWED SET DEFAULT NULL [42122-193] [Failed SQL: ALTER TABLE PUBLIC.AUTHENTICATION_EXECUTION ALTER COLUMN  USER_SETUP_ALLOWED SET DEFAULT NULL]
rems_prod_keycloak               |     Caused by: org.h2.jdbc.JdbcSQLException: Column \"USER_SETUP_ALLOWED\" not found; SQL statement:
rems_prod_keycloak               | ALTER TABLE PUBLIC.AUTHENTICATION_EXECUTION ALTER COLUMN  USER_SETUP_ALLOWED SET DEFAULT NULL [42122-193]"}}
rems_prod_keycloak               | 21:28:42,561 INFO  [org.jboss.as.server] (Thread-1) WFLYSRV0220: Server shutdown has been requested via an OS signal
rems_prod_keycloak               | 21:28:42,617 INFO  [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-7) WFLYJCA0010: Unbound data source [java:jboss/datasources/KeycloakDS]
rems_prod_keycloak               | 21:28:42,619 INFO  [org.jboss.modcluster] (ServerService Thread Pool -- 60) MODCLUSTER000002: Initiating mod_cluster shutdown
rems_prod_keycloak               | 21:28:42,642 INFO  [org.jboss.as.mail.extension] (MSC service thread 1-8) WFLYMAIL0002: Unbound mail session [java:jboss/mail/Default]
rems_prod_keycloak               | 21:28:42,655 INFO  [org.infinispan.remoting.transport.jgroups.JGroupsTransport] (MSC service thread 1-5) ISPN000080: Disconnecting JGroups channel ejb
rems_prod_keycloak               | 21:28:42,668 INFO  [org.infinispan.remoting.transport.jgroups.JGroupsTransport] (MSC service thread 1-7) ISPN000080: Disconnecting JGroups channel ejb
rems_prod_keycloak               | 21:28:42,675 INFO  [org.infinispan.remoting.transport.jgroups.JGroupsTransport] (MSC service thread 1-4) ISPN000080: Disconnecting JGroups channel ejb
rems_prod_keycloak               | 21:28:42,676 INFO  [org.wildfly.extension.undertow] (MSC service thread 1-8) WFLYUT0008: Undertow HTTPS listener https suspending
rems_prod_keycloak               | 21:28:42,676 INFO  [org.wildfly.extension.undertow] (MSC service thread 1-1) WFLYUT0008: Undertow AJP listener ajp suspending
rems_prod_keycloak               | 21:28:42,681 INFO  [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-4) WFLYJCA0010: Unbound data source [java:jboss/datasources/ExampleDS]
rems_prod_keycloak               | 21:28:42,696 INFO  [org.wildfly.extension.undertow] (MSC service thread 1-3) WFLYUT0019: Host default-host stopping
rems_prod_keycloak               | 21:28:42,697 INFO  [org.wildfly.extension.undertow] (MSC service thread 1-8) WFLYUT0007: Undertow HTTPS listener https stopped, was bound to 0.0.0.0:8443
rems_prod_keycloak               | 21:28:42,713 INFO  [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 68) WFLYCLINF0003: Stopped users cache from keycloak container
rems_prod_keycloak               | 21:28:42,714 INFO  [org.wildfly.extension.undertow] (MSC service thread 1-1) WFLYUT0007: Undertow AJP listener ajp stopped, was bound to 0.0.0.0:8009
rems_prod_keycloak               | 21:28:42,791 INFO  [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 64) WFLYCLINF0003: Stopped authorization cache from keycloak container
rems_prod_keycloak               | 21:28:42,792 INFO  [org.wildfly.extension.undertow] (MSC service thread 1-4) WFLYUT0008: Undertow HTTP listener default suspending
rems_prod_keycloak               | 21:28:42,793 INFO  [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 66) WFLYCLINF0003: Stopped realms cache from keycloak container
rems_prod_keycloak               | 21:28:42,798 INFO  [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 74) WFLYCLINF0003: Stopped keys cache from keycloak container
rems_prod_keycloak               | 21:28:42,807 INFO  [org.wildfly.extension.undertow] (MSC service thread 1-4) WFLYUT0007: Undertow HTTP listener default stopped, was bound to 0.0.0.0:8080
rems_prod_keycloak               | 21:28:42,807 INFO  [org.jboss.as.connector.deployers.jdbc] (MSC service thread 1-7) WFLYJCA0019: Stopped Driver service with driver-name = h2
rems_prod_keycloak               | 21:28:42,808 INFO  [org.wildfly.extension.undertow] (MSC service thread 1-4) WFLYUT0004: Undertow 2.0.21.Final stopping
rems_prod_keycloak               | 21:28:42,812 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-2) WFLYSRV0028: Stopped deployment keycloak-server.war (runtime-name: keycloak-server.war) in 228ms
rems_prod_keycloak               | 21:28:42,843 INFO  [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 63) WFLYCLINF0003: Stopped offlineSessions cache from keycloak container
rems_prod_keycloak               | 21:28:42,848 INFO  [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 71) WFLYCLINF0003: Stopped loginFailures cache from keycloak container
rems_prod_keycloak               | 21:28:42,848 INFO  [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 67) WFLYCLINF0003: Stopped actionTokens cache from keycloak container
rems_prod_keycloak               | 21:28:42,857 INFO  [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 72) WFLYCLINF0003: Stopped work cache from keycloak container
rems_prod_keycloak               | 21:28:42,861 INFO  [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 69) WFLYCLINF0003: Stopped offlineClientSessions cache from keycloak container
rems_prod_keycloak               | 21:28:42,873 INFO  [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 75) WFLYCLINF0003: Stopped authenticationSessions cache from keycloak container
rems_prod_keycloak               | 21:28:42,875 INFO  [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 70) WFLYCLINF0003: Stopped sessions cache from keycloak container
rems_prod_keycloak               | 21:28:42,878 INFO  [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 62) WFLYCLINF0003: Stopped client-mappings cache from ejb container
rems_prod_keycloak               | 21:28:42,878 INFO  [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 65) WFLYCLINF0003: Stopped clientSessions cache from keycloak container
rems_prod_keycloak               | 21:28:42,884 INFO  [org.infinispan.remoting.transport.jgroups.JGroupsTransport] (MSC service thread 1-3) ISPN000080: Disconnecting JGroups channel ejb
rems_prod_keycloak               | 21:28:42,896 INFO  [org.infinispan.remoting.transport.jgroups.JGroupsTransport] (MSC service thread 1-2) ISPN000080: Disconnecting JGroups channel ejb
rems_prod_keycloak               | 21:28:42,973 INFO  [org.jboss.as.server] (ServerService Thread Pool -- 46) WFLYSRV0010: Deployed "keycloak-server.war" (runtime-name : "keycloak-server.war")
rems_prod_keycloak               | 21:28:43,025 INFO  [org.jboss.as] (MSC service thread 1-1) WFLYSRV0050: Keycloak 7.0.1 (WildFly Core 9.0.2.Final) stopped in 442ms
rems_prod_keycloak exited with code 1

@smalho01
Copy link
Collaborator Author

I had not turned the memory up, missed that part of the instructions. With increased memory running docker-compose -f docker-compose-dev.yml up returns:

failed to solve: rpc error: code = Unknown desc = failed to solve with frontend dockerfile.v0: failed to read dockerfile: open /var/lib/docker/tmp/buildkit-mount146261203/Dockerfile.dev: no such file or directory

Running docker-compose up, the test-ehr seems to be running fine but now it fails on keycloak. When I click on the lab form to open DTR I get This site can’t be reached when it redirects to auth.

The first issue when you're running docker-compose up -f docker-compose-dev.yml up is that one of your repositories is missing its corresponding Dockerfile.dev. I believe all of the other dockerDev branches have been merged into master in the mcode space so that's just a matter of pulling down the right source code. Once you do that docker-sync-stack start should work as well.

The second issue relating to keycloak I'm less sure about since the keycloak image is external and not maintained by us. In the docker-compose-dev.yml file, keycloak imports the fhir server realm from the test-ehr directory and mounts a volume to persist data. In docker-compose.yml (used by docker-compose up) and docker-compose-porter.yml, that volume mount should be commented out and import command should both be commented out. Other than something related to that import or something environmental, I'm not sure what else could cause keycloak to fail. The image I'm using comes out of the original SetupGuideForMacOS in CRD, which is what my docker set up guides are based upon. See the below yml file snippets of what the keycloak service should look like.

services:
  keycloak:
    container_name: rems_dev_keycloak
    # command: ["-Djboss.http.port=8180"]
    ports:
      - '8180:8080'
    environment:
      - KEYCLOAK_USER=admin
      - KEYCLOAK_PASSWORD=admin
      - DB_VENDOR=h2
      - KEYCLOAK_IMPORT=/resources/ClientFhirServerRealm.json
    volumes:
      - keycloak-data:/opt/jboss/keycloak/standalone/data/
      - '../test-ehr/src/main/resources/ClientFhirServerRealm.json:/resources/ClientFhirServerRealm.json'
    image: hkong2/keycloak
services:
  keycloak:
    container_name: rems_prod_keycloak  
    # command: ["-Djboss.http.port=8180"]
    ports:
      - '8180:8080'
    environment:
      - KEYCLOAK_USER=admin
      - KEYCLOAK_PASSWORD=admin
      - DB_VENDOR=h2
      # - KEYCLOAK_IMPORT=/resources/ClientFhirServerRealm.json. **<-- commented out** 
    volumes:
      - keycloak-data:/opt/jboss/keycloak/standalone/data/
      # - './resources/ClientFhirServerRealm.json:/resources/ClientFhirServerRealm.json' **<-- commented out** 
    image: hkong2/keycloak

@KeeyanGhoreshi
Copy link
Contributor

Updated all my repositories, I think two of them were out of date. The docker-sync-stack command still fails, docker-compose up starts but keycloak still fails (for a different reason this time I think), and docker-compose -f fails as well, for the same reason as before.

@danlee1025
Copy link

docker-sync-stack start and docker-compose up both work for me. It looks like when you ran docker-sync-stack start it showed ruby 2.6, maybe remove that from your system and see if it fixes the issue?

@KeeyanGhoreshi
Copy link
Contributor

Fixed the issue, has some misconfigurations and zscaler was blocking the VSAC value set loading

@smalho01 smalho01 merged commit 746247d into master Nov 24, 2021
@smalho01 smalho01 deleted the dockerDev branch November 1, 2022 18:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants