/var/discourse/launcher rebuild app
successfully updated Discourse for me. I am just gonna do it that way from now on.
FWIW, I suspect I have a weird Linode-specific Docker install on my Linode instance. This may or may not be the cause of my inability to update within the Discourse UI, and some other problems.