How do I manually update Discourse and Docker image to latest?


(Lea-Ann McGregor) #127

I had someone else (@pfaffman perhaps?) do it. I’d like to learn how to do it myself. I’m hosted on digital ocean.


(Joshua Rosenfeld) #128

That would be very likely (he’s who I would send you to if you wanted to pay).

So, let me do my best to walk you through the process.

First, Jay should have provided you with some details about your installation. Specifically, we’re going to need the IP address of your server, the username (likely root), and the password. Please verify that you have all 3 details (don’t share them) or we will not be able to proceed.

Next, we will need to SSH into the server. How we do this depends on your operating system, what OS do you have (Windows, OS X (Mac), Linux)?


(Lea-Ann McGregor) #129

I do have the credentials. And I’m on windows.


(Lea-Ann McGregor) #130

using Jay’s information, I’m now in the console of Digital Ocean and see that I am on Ubuntu 16.04.1 @jomaxro


(Joshua Rosenfeld) #131

Perfect! If you’re at the console, it should be as simple as running the 3 lines in step 2 above. Enter each line one at a time and press enter. Wait for it to finish before running the next command. Jay would have already done step 3. If you encounter any errors with the 3 lines, let me know.


(Jay Pfaffman) #132

Should work fine. I did it yesterday on one site. The only hangup, I think, might be a scary-sounding warning about a grub config being changed and should you overwrite the old one or keep the new one. I think it doesn’t matter which you choose.

And you might need to use the tab or arrow keys to select the answer you want.


(Lea-Ann McGregor) #133

ERROR: Docker version 1.12.2 not supported, please upgrade to at least 17.03.1 or recommended 17.06.2.
Do I need to run the docker upgrade listed then?


(Joshua Rosenfeld) #134

Yes. You’ll need to run that command, then run the third line from step 3 again.


(Lea-Ann McGregor) #135

Success. Thank you for the assistance and hand holding.


(Joshua Rosenfeld) #136

No problem. If I may ask, what caused you issues with the guide itself? We’re always looking to improve documentation…


(Lea-Ann McGregor) #137

Once I knew how to navigate to the console, it was fine.


(Jay Pfaffman) #138

That’s great news! Not many of my install customers ever even try to log in from the console, so it’s good to know that my instructions (and the random password that I set) actually work.


(Lea-Ann McGregor) #139

Took me back to DOS days … Yes, I’m that old. But if you all weren’t here holding my hand I wouldn’t have attempted it.


(Tereensio) #140

I ran:

cd /var/discourse
git pull
./launcher rebuild app

and get this error message:

Ensuring launcher is up to date
Fetching origin
Launcher is up-to-date
Stopping old container
+ /usr/bin/docker stop -t 10 app
app
cat: templates/templates/postgres.template.yml: No such file or directory
cat: templates/templates/postgres.template.yml: No such file or directory
cd /pups && git pull && /pups/bin/pups --stdin
/usr/bin/docker: invalid reference format: repository name must be lowercase.
See '/usr/bin/docker run --help'.
cat: cids/app_bootstrap.cid: No such file or directory
"docker rm" requires at least 1 argument.
See 'docker rm --help'.

Usage:  docker rm [OPTIONS] CONTAINER [CONTAINER...]

Remove one or more containers
rm: cannot remove ‘cids/app_bootstrap.cid’: No such file or directory
** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one

Ubuntu 14.04.

Any ideas?


(Jay Pfaffman) #141

Hmm. Try again?

Or, have you edited your app.yml lately? It could be that you introduced some error there.

I just did a rebuild and had not trouble. It was Ubuntu 16.04, but that shouldn’t be an issue.


(Tereensio) #142

I did in fact edit the app.yml because at first (at first attempt of rebuilding) I got this message:

UPGRADE OF POSTGRES FAILED

You are going to need to export your data and import into a clean instance:

In containers/app.yml: Change “templates/postgres.template.yml” TO “templates/postgres.9.3.template.yml”

Run ./launcher rebuild app again

When your instance is running:
Run ./launcher enter app
Run cd /shared/postgres_backup && sudo -u postgres pg_dump discourse > backup.db

Undo the postgres template in your container config
Run: ./launcher stop app
Run: sudo mv /var/discourse/shared/standalone/postgres_data /var/discourse/shared/standalone/postgres_data_old
Run: ./launcher rebuild app

Run: ./launcher enter app
Run: cd /shared/postgres_backup
Run: sv stop unicorn
Run: sudo -iu postgres dropdb discourse
Run: sudo -iu postgres createdb discourse
Run: sudo -iu postgres psql discourse < backup.db
Run: exit
Run: ./launcher rebuild app

So I changed from postgres to postgres.9.3 – but that didn’t help – so I changed back. And those are the only edist I did in app-yml


(Jay Pfaffman) #143

Oh. That.

Hmm. The errors you have above show that you’re trying to download the old template. Perhaps you didn’t change all of the references to the old postgres template to the new one? The old template’s not there, so you need to use the new one as directed.

If you have a recent backup, the simplest solution would be to rename /var/discourse, do a clean install, copy the backup file into /var/discourse/shared/standalone/backups/default and restore it.


(Tereensio) #144

I can see the “templates/postgres.template.yml” only once in app.yml

Should it now be “templates/postgres.template.yml” or “templates/postgres.9.3.template.yml”?

(Restoring from backup not an option, unfortunately. My bad. I know.)


(Jay Pfaffman) #145

Yeah. You need to follow those directions. I don’t think that I can be any more clear than that.


(Gerhard Schlager) #146

2 posts were split to a new topic: Dl-custom-content plugin causes error during upgrade


Dl-custom-content plugin causes error during upgrade