# MKJ's Opinionated Discourse Deployment Configuration

**URL:** https://meta.discourse.org/t/mkjs-opinionated-discourse-deployment-configuration/193355
**Category:** Sysadmins
**Tags:** explanation, install
**Created:** [June 9, 2021, 11:34pm UTC](https://meta.discourse.org/t/mkjs-opinionated-discourse-deployment-configuration/193355 "2021-06-09T23:34:00Z")
**Posts on this page:** 1
**Showing post:** 30

<div class="post-metadata">

### Author: ![mcdanlj](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mcdanlj/32/131829_2.png) [@mcdanlj](https://meta.discourse.org/u/mcdanlj)
#### Post date: [January 25, 2023, 9:36pm UTC](https://meta.discourse.org/t/mkjs-opinionated-discourse-deployment-configuration/193355/30 "2023-01-25T21:36:01Z")

</div>

This is a case of “it’s fine until it’s not” — people panic when the update fails in the UI and they don’t know to `git pull; ./launcher rebuild app` to work around the problem. This happens every time there is a change that invalidates the GUI update, I think. It happened again:

> [@Failed upgrade from 2.9.0.beta14 to 3.1.0.beta](https://meta.discourse.org/t/failed-upgrade-from-2-9-0-beta14-to-3-1-0-beta/252551):
>
> I upgrade every month, always on a few development systems first, then production. During this month’s cycle, the upgrade failed on the 1st development system. docker\_manager upgraded fine but the discourse upgrade failed with: Sorry, there was an error upgrading Discourse. Please check the logs below. The Discourse app is completely down (it’s displaying the “Oops” error 500 page). Here’s what the on-screen log contains: \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\* \*\*\* Please …

I feel like this panic highlights the value of having a consistent, normal update mechanism that avoids this experience.

At the same time, I encountered the also-infrequent case of the bootstrap breaking the running system: Zero-ish-downtime updates do occasionally break like this, once or twice a year maybe on average? So don’t delay between the bootstrap and the destroy/start.

> [@Self-hosted upgrade to 3.1.0.beta2 with typical multi-container install requires extra downtime](https://meta.discourse.org/t/problems-with-self-hosted-upgrade-to-3-1-0-beta2/252916):
>
> I updated my sites from 3.1.0.beta1 to 3.1.0.beta2, and after bootstrapping the new version, but before destroying the old app containers and starting new ones, at least one of those sites started giving the generic error page to users. I didn’t notice it on my test site or the other sites I run, but it’s possible that it happened and I didn’t see it. In any case, for me in at least one case, the “zero downtime” update process did not succeed.

I should update the text to make that clear, so I’ll do that next.

---

_[View the full topic](https://meta.discourse.org/t/mkjs-opinionated-discourse-deployment-configuration/193355)._
