Guidance on new on-premise docker compose structure

Hi Retool community,

I recently noticed there're substantial changes to the docker compose structure

These change include but not limit to:

  • Two .env instead of one
  • No longer have CodeExecutor.Dockerfile
  • Major version upgrade on postgre db version on both Retool backend & Retool DB
    • Retool backend: 11.13 -> 16.8
    • Retool DB: 14.3 -> 16.8
  • Simplified docker compose setting on almost every container

We're current on 3.148 stable and have plan on upgrading to 3.196 stable soon. I especially concern about the major version upgrade on the postgre database as postgre does not support auto migration if I remember correctly.

Is there a detailed guidance on how should I perform the upgrade to accomodate the new docker compose structure and all those changes without losing data?

Hi @zelterNN , thank you for reaching out!

You should be able to continue upgrading and using your self-hosted instance as you have been. A Postgres upgrade is independent from the Retool upgrade. Our docs still recommend PostgreSQL version 13 or later.

Our general guidance is that before you upgrade your Retool instance version, we recommend creating a backup of your Retool PostgreSQL database and copying and storing the ENCRYPTION_KEY environment variable (along with any other environment variables specific to your instance) in a secure place.

After following the deployment guide steps, we recommend manually testing the deployment to check if it was successful by referencing the [release notes]/docs/releases/index.mdx) to better understand what has changed and what to test.

For more information on the upgrade best practices, you can find a detailed guide here!

Hi @Sabrina_Xiao,

Thanks for your reply. Glad to hear I can still use the previous docker compose for upgrading.

Just curious,

  • Can I get rid of temporal-admin-tools and temporal-ui as in your latest docker compose?
  • Is there any feature Retool is currently building / plan on building that requires higher version postgre in the near future?
  • Will there be noticeable performance gain for using higher verison of postgre in the latest stable version?

If so, do we have a practical guide for upgrading the postgre as well as other service containers from the pervious version?

Cuz I'm currently not externalized postgre but the containerized Retool backend db is on 11.13 version as in the pervious docker compose. Seems I need to upgrade it sooner or later, even if not to version 16.

Hey @zelterNN!

  • Yes - those are optional Temporal services.
  • No - not that I'm specifically aware of.
  • Maybe - version updates generally include security fixes and incremental performance updates, but it's hard to say whether those changes will be noticeable.

When it comes to the logistics of upgrading the Postgres version, I don't think we have an official guide. The general best practice is to simply create a backup of your current DB and load it into the updated one. Let me know if you have specific questions about this process! Or feel free to join our Office Hours every Tuesday and Thursday.

1 Like

updated to latest stable version as well as the postgre version last week using dump - load method......took some time on the whole process but it works so far so good :wink:

1 Like