Discourse is the software that powers ClojureVerse. It regularly releases new versions, and we usually try to stay current.
The easy way to upgrade is through admin/upgrade, which looks like this.
If the docker_manager
is out of date you need to update that first (the other buttons will be greyed out so you don’t have a choice), after that you “Upgrade all”, click “Start upgrade”, and watch as the upgrade takes place. You get a log of terminal output and can follow along.
Most of the time this goes well, but sometimes it doesn’t. In that case you need to ssh into the machine and rebuild Discourse, which will pull in the latest version.
ssh root@internal.clojureverse.org
tmux at
script ~/`date +%Y%m%d_%H%M%S`_upgrade_discourse.txt
cd /var/discourse/
./launcher rebuild app
# Ctrl-D (exit script)
Notes:
- clojureverse.org is proxied by Cloudflare, internal.clojureverse.org bypasses cloudflare
- Always use
tmux
, trytmux at
first (attach), if there is no existing session then just usetmux
to start one. The upgrade can take a while and if you get disconnected you want to be able to go back and see where it’s at. This also allows someone else to jump in or follow along. - use
script
to record the session, for reference, and in case something goes wrong and you need help the other person can see what already happened.
This rebuild tends to always just work. If it doesn’t… you’ll have to have a closer look at the output and take it from there.