Web-only - do I need a separate image for each container?

It contains unique copies of your sites themes, which include JS, CSS and other types of assets.

Also the unique combination of your plugins and their dependencies.

It’s a long history, but Discourse and most of the tooling predates stuff like Docker compose.

We ship a fat container that contains the whole kitchen sink, and there are several trade-offs to that. As for one, the stateful container allows for features like our web based one-click updater.

Coming from a more modern approach to how containers are usually deployed today, it is indeed a big discrepancy. This is discussed at long in Can Discourse ship frequent Docker images that do not need to be bootstrapped? and is worth a read.

In the end, our current status quo works well for people who are only slightly tech-inclined, that can copy and paste commands in a SSH session and configure DNS, but aren’t masters of Linux containers.

And as for the Linux containers black-belts out there, we can tell then that they can take that bootstrapped image, ship it to a registry and re-use it on their favorite container orchestration software.

People between the two personas above tho, they feel the pain the most.

2 Likes