Help me understand what a production deployment looks like, especially docker image build step

Hi, I’m new here.

I’m trying to help get a custom domain deployment of an openremote-based custom project off the ground. I have a good understanding of the runtime components and how to execute them on my local host: i.e. successfully ran docker containers for postgres, manager, keycloak and was able to load the project in the browser.

I’ve been browsing the wiki and it’s unclear to me what steps I should now use to build the docker image for a production deployment of the full stack, including the proxy with SSL. Can anyone help?


nvm I think i found it here:

The proxy container will figure out if it needs to request a certificate or not based on the value supplied to OR_HOSTNAME; the server will need port 80 as well as port 443 exposed for SSL generation.

Customisation is done using an overlay technique using docker volume mappings; we build a docker volume called deployment-data which is populated by the deployment docker image (if the volume is empty i.e. when it is first created). This deployment-data is then volume mapped into the manager service at /deployment and the manager will load jars and static web content from this location automatically.

Thanks! I found a solution for the kubernetes-based deployment that emulates the way docker-compose handled deployment-data, so we can push customization into the stack using an initContainer: