be careful to not assume the web interface for updating is always going to work. Updating from the webpage is not always going to work. Certain updates (like very recent database version update) will require rebuilding from the command line. That means accessing the server via SSH and using the command line to rebuild
Unlike a lot of admins I do usually use the web interface to update but I have a shell open to run the update manually if I have to when I do
So I went through the whole process, with the help of Discourse’s bot, which made it a bit easier for me, because it seems that the original topic “Move from standalone container to separate web and data containers” was written 10 years ago, and I didn’t want to mess things up.
After a few questions, and a lot of notes taken, I believe I understand things a bit more. My installation is running, so I guess everything has been properly set up…?
The bot told me that when I want to update something that actually needs me to SSH, this should be the order:
# this will take around 20 minutes (first time); usually 5–15 min after that
# (NOT the exact first-bootstrap time — docker caches layers on later rebuilds)
sudo ./launcher bootstrap web_only
# after successful bootstrap, run:
sudo ./launcher destroy web_only && sudo ./launcher start web_only
# occasionally, check disk space:
df -h
# and if disk space is running low due to old unused images:
sudo ./launcher cleanup
and I’m good to go.
That “once-a-year” update is bit more complex, but I also took notes on that, I just need to organize those notes, since I won’t be using them right now.
I’m not an expert, others are much more well versed in these maters but… from my experience never count on the web interface succeeding, always be ready to rebuild from the command line. The recent PostgreSQL 15 to 18 upgrade detailed here was a slam dunk, you know you are not going to get away with the web interface upgrade.
It’s not that hard, consider the web ui upgrade a convenience, if it works… great but be ready if it does not. At least when it doesn’t work, it gives you an informative explanation for what happened and what to do to fix it. Many pro discourse admins around here would tell you not to even bother trying. My forum is small low volume, I can afford to gamble, you may not have that luxury.
i’m not posting here much these days but if you need help with setting up dual container or have questions, feel free to pm me. i’m running 2 separate dual container forums behind cloudflare cdn with s3 compatible r2 object storage. yea its a bit more complex than single container, but it’s not as difficult as many think. super easy to maintain and you can use a bash script to make it even easier to update.