Unable to update to latest manager container

Hi, after pulling latest manager and proxy containers, I tried to stop and remove the old ones, then restart the docker compose with the new downloaded containers.

But I have some problems in the manager container, that won’t restart:

I used the following commands, with containers already stopped:

~/data/openremote$ docker-compose rm manager
~/data/openremote$ docker-compose rm proxy
~/data/openremote$ docker pull openremote/manager:latest
~/data/openremote$ docker pull openremote/postgresql:latest
~/data/openremote$ docker pull openremote/proxy:latest

Then

~/data/openremote$ docker-compose up manager
openremote_postgresql_1 is up-to-date
openremote_keycloak_1 is up-to-date
Starting openremote_manager_1 ... done
Attaching to openremote_manager_1
manager_1     | Picked up JAVA_TOOL_OPTIONS:
manager_1     | Using logging configuration on classpath: logging.properties
manager_1     | 2022-03-14 11:46:40.438  INFO    [main                          ] org.openremote.container.Container       : >>> Starting runtime container...
manager_1     | 2022-03-14 11:46:40.456  INFO    [main                          ] .openremote.manager.syslog.SyslogService : Syslog service enabled
manager_1     | 2022-03-14 11:46:40.461  INFO    [main                          ] .manager.security.ManagerIdentityService : Enabling Keycloak identity provider
manager_1     | 2022-03-14 11:46:40.481  INFO    [main                          ] curity.keycloak.KeycloakIdentityProvider : Keycloak service URL: http://keycloak:8080/auth
manager_1     | 2022-03-14 11:46:40.558  INFO    [main                          ] curity.keycloak.KeycloakIdentityProvider : Keycloak proxy URI set to: http://keycloak:8080/auth
manager_1     | 2022-03-14 11:46:40.610  INFO    [main                          ] curity.keycloak.KeycloakIdentityProvider : Connecting to Keycloak server: http://keycloak:8080/auth
manager_1     | 2022-03-14 11:46:40.737  INFO    [main                          ] curity.keycloak.KeycloakIdentityProvider : Keycloak identity provider available: http://keycloak:8080/auth
manager_1     | 2022-03-14 11:46:40.739  INFO    [main                          ] security.ManagerKeycloakIdentityProvider : Loading KEYCLOAK_GRANT_FILE: /deployment/manager/keycloak.json
manager_1     | 2022-03-14 11:46:40.947  INFO    [main                          ] te.model.util.ValueUtil.MODEL_AND_VALUES : Initialising asset model...
manager_1     | 2022-03-14 11:46:41.107  INFO    [main                          ] org.reflections.Reflections              : Reflections took 96 ms to scan 1 urls, producing 66 keys and 248 values
manager_1     | 2022-03-14 11:46:41.224  INFO    [main                          ] org.reflections.Reflections              : Reflections took 56 ms to scan 1 urls, producing 127 keys and 367 values
manager_1     | 2022-03-14 11:46:41.804  INFO    [main                          ] curity.keycloak.KeycloakIdentityProvider : Keycloak proxy URI set to: http://keycloak:8080/auth
manager_1     | 2022-03-14 11:46:41.809  INFO    [main                          ] container.persistence.PersistenceService : Preparing persistence service for database: POSTGRES
manager_1     | 2022-03-14 11:46:41.831  INFO    [main                          ] container.persistence.PersistenceService : Opening database connection: jdbc:postgresql://postgresql:5432/openremote?currentSchema=openremote
manager_1     | 2022-03-14 11:46:42.249  INFO    [main                          ] ydb.core.internal.license.VersionPrinter : Flyway Community Edition 8.4.0 by Redgate
manager_1     | 2022-03-14 11:46:42.250  INFO    [main                          ] .internal.database.base.BaseDatabaseType : Database: jdbc:postgresql://postgresql:5432/openremote (PostgreSQL 14.1)
manager_1     | 2022-03-14 11:46:42.347  INFO    [main                          ] ydb.core.internal.license.VersionPrinter : Flyway Community Edition 8.4.0 by Redgate
manager_1     | 2022-03-14 11:46:42.398  INFO    [main                          ] ydb.core.internal.license.VersionPrinter : Flyway Community Edition 8.4.0 by Redgate
manager_1     | 2022-03-14 11:46:42.427  SEVERE  [main                          ] org.openremote.container.Container       : >>> Runtime container startup failed
manager_1     | org.flywaydb.core.api.exception.FlywayValidateException: Validate failed: Migrations have failed validation
manager_1     | Migration checksum mismatch for migration version 20191202.01
manager_1     | -> Applied to database : -1932254533
manager_1     | -> Resolved locally    : -941130336. Either revert the changes to the migration, or run repair to update the schema history.
manager_1     | Need more flexibility with validation rules? Learn more: https://rd.gt/3AbJUZE
manager_1     |         at org.flywaydb.core.Flyway$1.execute(Flyway.java:131)
manager_1     |         at org.flywaydb.core.Flyway$1.execute(Flyway.java:124)
manager_1     |         at org.flywaydb.core.FlywayExecutor.execute(FlywayExecutor.java:214)
manager_1     |         at org.flywaydb.core.Flyway.migrate(Flyway.java:124)
manager_1     |         at org.openremote.container.persistence.PersistenceService.prepareSchema(PersistenceService.java:507)
manager_1     |         at org.openremote.container.persistence.PersistenceService.init(PersistenceService.java:291)
manager_1     |         at org.openremote.container.Container.start(Container.java:164)
manager_1     |         at org.openremote.container.Container.startBackground(Container.java:209)
manager_1     |         at org.openremote.manager.Main.main(Main.java:31)
openremote_manager_1 exited with code 1

Any suggestion?

Hi,

Our docker images are effectively nightly builds and the DB migration scripts are not updated there (only official versioned releases will have fully functioning DB migration scripts). what this means is that your DB will need to be rebuilt so you’ll need to remove the postgresql-data volume (you can always export data from the existing DB beforehand if you need to preserve anything).

Official (non beta) versions will be coming shortly.

1 Like

Hi rich,
Thank you for the explanation.
Do you have a guide to export DB data before rebuilding it?

Hi,

There is no specific guide for DB exporting, can you describe what data you want to preserve?

  • Assets/Agents
  • Historical data points
  • Rules
  • Users