Old installation failing upgrade

A nonprofit I work with has a Discourse installation 2.9.0.beta1, for which maintenance fell to me when the original admin moved on. When I tried to update the SMTP credentials, I learned that the installation can neither rebuild itself nor safely upgrade, via web or via commandline. (If I hadn’t had a hot backup of the instance made before work began, this would’ve been a bad time.) The problem appears to happen fairly deep in Ruby, and I can capture logs if they’d seem helpful.

I thought it might just be too old to gracefully update, so I tried a recovery process instead, creating a new fresh Discourse instance and then loading the most recent backup of the forum into it, but this process also failed inconclusively, with what I think were database column errors before the upgrade process went nonresponsive.

What would be the best way to proceed from where we’re standing? The forum is currently functional this minute, I can just neither upgrade nor, apparently, employ a backup. Should I continue to try for recovery, should I redouble my efforts to upgrade and go capture logs to get started, or is there a third option I don’t see?

You need to move to a new virtual machine. It’s likely that your os is to old to upgrade docker you a supported version.

It’s better to move to a new vm that will be on newer hardware that is faster and cheaper.

You can see Move a Discourse site to another VPS with rsync.

If you want to pay to have it done you can contact me via dashboard.literatecomputing.com

Hmm.

Docker versioning did not seem to play a role in why Ruby builds collapsed but I suppose it’s possible. The docker pulls that were part of the rebuild did not appear to have any exceptional failure states. This does look like I can try it, though. Thanks for the reply!

1 Like

What does

 cat /etc/issue

Say?

And

  docker --version
root@ip-[...]:~# cat /etc/issue
Ubuntu 16.04.6 LTS \n \l

root@ip-[...]:~# docker --version
Docker version 17.05.0-ce, build 89658be

Not supported.

Beyond end of life.

2 Likes

Thanks for the reply. I’m attempting a migration now, though apparently that’s going to be a process.

I got you going again mostly by following Move a Discourse site to another VPS with rsync.

Your move was complicated a bit more by your having backups on S3 configured in the database rather than in ENV variables as described in Configure an S3 compatible object storage provider for uploads (though that is for uploads, so you’d need to not use the use_s3 setting, just the backup bucket and location. EDIT: And then the restore failed because your EC2 doesn’t have write access to the bucket.

Having a load balancer in front of your site also changes things from how things are for most people.

And since your credentials are for the EC2 rather than having them in the database or the YML file, the restore can’t complete.

1 Like