# Discourse Image Builder for Gitlab CI/CD Pipelines

**URL:** https://meta.discourse.org/t/discourse-image-builder-for-gitlab-ci-cd-pipelines/261857
**Category:** Self-hosting
**Tags:** unsupported-install
**Created:** [April 16, 2023, 12:44pm UTC](https://meta.discourse.org/t/discourse-image-builder-for-gitlab-ci-cd-pipelines/261857 "2023-04-16T12:44:10Z")
**Posts on this page:** 1
**Showing post:** 4

<div class="post-metadata">

### Author: ![Falco](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/falco/32/179432_2.png) [@Falco](https://meta.discourse.org/u/Falco)
#### Post date: [April 16, 2023, 4:47pm UTC](https://meta.discourse.org/t/discourse-image-builder-for-gitlab-ci-cd-pipelines/261857/4 "2023-04-16T16:47:34Z")

</div>

> [@mkbrechtel](#):
>
> It is not possible, from our experience, to version pin discourse reliably.

There is a `version` parameter on the app.yml file that can be set to the version you want to run.

> [@mkbrechtel](#):
>
> It takes a long time to build the image and when the image is built the service is not available. Also discourse has the longest DevOps iteration cycle of all the services we support.

Using the [official install](https://meta.discourse.org/t/142537?silent=true) that is handled using [Move from standalone container to separate web and data containers](https://meta.discourse.org/t/move-from-standalone-container-to-separate-web-and-data-containers/29413).

> [@mkbrechtel](#):
>
> Databases are managed in a different way than for usual docker based projects.

True, we try to make it friendly for webmasters from the “drag and drop this zip file contents with FileZilla via FTP”, while ensuring that everyone runs recent, supported and patched versions of all the software in the stack, even their Databases.

For more knowledgeable Discourse admins, pointing to an externally managed database is an environment variable away per [Configure Discourse to use a separate PostgreSQL server](https://meta.discourse.org/t/configure-discourse-to-use-a-separate-postgresql-server/46375)

> [@mkbrechtel](#):
>
> The official Discourse deployment story is incompatible with OCI based development workflows and deployments, like Kubernetes or even Docker-Compose.

Yes, the launcher based flow is not compatible out-of-the-box with container orchestration. That said, it can be made compatible by running `./launcher bootstrap app` and pushing the resulting image to a container registry and then running said image via orchestration.

> [@mkbrechtel](#):
>
> For example it refuses to run on rootless Podman with an error about missing storage volumes without being able to bypass this with an argument or env var.

We welcome a pull request to make this possible, as it sounds useful generally. #pr-welcome

---

_[View the full topic](https://meta.discourse.org/t/discourse-image-builder-for-gitlab-ci-cd-pipelines/261857)._
