Self host Retool on Aptible

TL;DR: is it still ok to host Retool on Aptible?

Hi! My company is currently running Self Hosted Retool on a PaaS called Aptible. Instructions for hosting Retool on Aptible used to be in the Retool README but were removed on May 17 (PR link). Neither the commit nor PR have any commentary as to why though. Before we (continue) to invest in using Retool on Aptible, we wanted to get a sense of how "supported" this is. To run Retool, Aptible is essentially just building an image from the tryretool/retool-onpremise Dockerfile and starting a container with it on AWS (likely ECS, but this isn't published). Is hosting Retool in this manner still the preferred method or are we doing something undocumented and likely to change?

We would love to use Retool Cloud but would need a BAA to have our PHI on your servers due to HIPAA.

Thanks for your time!

Hey @Jeff_Peterson welcome to the community!

BLUF: Yes, you can use Aptible to host Retool. It's not a preferred method, but should still work.

The instructions for hosting Aptible were removed because we don't know how to maintain an Apitble template and we were often unable to help customers who ran into issues deploying it. The support for multiple container types also made it difficult to support a scaled retool instance. We removed the instructions in an effort to provide clearer guidance on installations with a well defined 'happy path'. That being said, Aptible should still work, we just don't have as much ability to support and troubleshoot those deployments. Our documentation is now just a bit clearer in that regard. Let me know if you have any other questions!

Thanks for the response @joeBumbaca! That is reassuring. I have one more question to understand if how I'm running Retool on Aptible acceptable.

The support for multiple container types also made it difficult to support a scaled retool instance.

When you say "support for", does that mean that multiple container types are optional? The docs seem to imply that it's required to have both api and jobs-runner containers. From docker-compose file, I can see that both container types are started with start_api.sh (with the SERVICE_TYPE env var differentiating them) so it seems plausible that it's optional and a single container, if properly configured, could serve as both api and jobs-runner. I tried searching the docs and the forum and couldn't find any answers.

On Aptible, I'm only running a single container/instance of Retool and things appear to be working fine. Do I need to run separate containers for api and jobs-runner or is a single container ok?

Aptible is super expensive and I'd like to minimize my hosting costs - running both would essentially double them.

Thanks again for your time!

@Jeff_Peterson Great question!

Do I need to run separate containers for api and jobs-runner or is a single container ok?

With no scaling, running all services in the same container is fine. But issues can occur when trying to horizontally scale the instance. You can only ever have 1 instance of the jobs-runner service, while all others can be scaled up. So if you need to add more, you must break the jobs-runner out into its own container so that it remains at 1 instance while the others are allowed to grow as demand requires. Hope that helps!

Yes! Super helpful, thank you!

1 Like