The Docker build pack is a powerful one. You can use your Dockerfile to build & serve your applications. It means you can deploy any unsupported (natively with build packs) applications, services, anything, where a simple Docker file is enough!

Sample with Baserow

docker tutorial

I choose Baserow as an example application because the config can be tweaked to allow for different ways of running the application. You can for example try using a postgres and redis deployed with coolify and pass their urls as variables to Baserow application.

  • Create a repository on GitHub where you will keep only the Dockerfile.
  • Create and push a simple dockerfile, than only mentions the image you want to use, like so:
FROM baserow/baserow:1.10.2
  • Create an application in Coolify:
    1. Click on Create New Resource button and select Application
    2. Select a GitSource that has access to the repository or specify a Public Repository URL.

    With Public Repository, you won’t get the auto-commit builds. You need to initiate rebuild manually.

    1. Select Docker as build pack.
    2. Make sure the port field is set, otherwise Coolify won’t know which port to expose (for example in the case of baserow it will be 80 instead of 3000).
    3. Add any env variables that are required to start the container in the top right Secrets panel - in case of Baserow the only thing you need to add is BASEROW_PUBLIC_URL which should correspond to the url you’ve set for the application.
    4. If your application needs volumes mounted / to persist data between runs safely add persistent storage in the bottom right Persistent Storage panel. In the case of Baserow you need to add only /baserow/data as a volume.
    5. Optionally switch on debug logs - should be the law option in the app settings panel.
  • Deploy your application.
  • Enjoy.