In this example we assume you are using the Ghost CLI, which we highly recommend, to run your blog. If you don't yet, check out here how to make your life easier!
Thanks to the Ghost CLI, upgrading Ghost has become a very easy and automated process. The only thing you need to take care of is to backup your data.
We can't stress this enough - even if it all goes horribly wrong, recovering is quick and easy if you're properly backed up. Use the export tool on the labs page to create a
.json file and make copy of the
/content folder in the root of your Ghost install - this contains your images and themes. Read our guide on importing & exporting for detailed instructions.
ghost update cannot be used to upgrade from 0.11.x to 1.x, for that you need our migration guide.
If you are on any version of 1.x.x, you can always use
ghost update to upgrade to the latest 1.x.x version. The only time you may have to do more than a simple
ghost update from now on, is when the major version changes, e.g. when we ship 2.x.x.
Once you got all your important data backed up, you can go ahead and upgrade Ghost to the latest version:
One command is all you need
There's no need to stop Ghost first.
ghost update will handle stopping and restarting Ghost for you. One command is all you need 🎉
You will need to navigate to the folder of your current Ghost installation to execute this command. Ghost CLI will then fetch information about a newer version, download and install it.
After the installation, Ghost CLI will restart the app automatically.
If anything goes wrong with the upgrade, you can try rolling back or forcing another upgrade. See the ghost update command reference for more details on available options
Ghost 1.18.3 Troubleshooting
If you are unable to update to 1.18.3 and you receive an error, please continue reading here.
If you need to upgrade from a pre-1.0.0 version or from v1.1.3 or lower, please see the extra steps below!
Otherwise, upgrading Ghost-CLI requires a single command:
sudo npm i -g ghost-cli@latest
Or if you used yarn:
sudo yarn global add ghost-cli@latest
Ghost CLI 1.2.0 added a fix, and Ghost CLI 1.3.0 added a migration to solve the ssl renewal problems with letsencrypt & nginx that some users experienced.
After upgrading, please run
ghost migrate manually. Alternatively you can run
ghost update if a newer Ghost version is available -
ghost update will automatically run
If you installed Ghost using a pre-1.0.0 version of Ghost-CLI (meaning any version less than 1.0.0, including alphas, betas and release candidates), you will need to run some commands manually to upgrade your Ghost installation to one compatible with version 1.0.0 of the CLI. Below is a rough guide for upgrading your instance, based on the version the instance was installed with.
From 1.0.0 onwards, installs will be automatically migrated.
Once you've run the steps below, edit the
.ghost-cli file in your ghost instance folder and replace the version noted by "cli-version" with "1.0.0".
If your instance was installed with:
If you installed Ghost locally (with
ghost install local) you can skip the steps below - your instance is compatible with the stable 1.0 version.
To upgrade your instance to one that is 1.0.0 compatible, you should first backup your data, then run these commands (from within your ghost instance folder):
crontab -e-> then in the editor remove the line that has
ghost ssl-renewon it
rm -f ./system/files/*.conf
ghost setup nginxif you did not previously set up ssl, or
ghost setup nginx sslif you did
Unfortunately, you will need to re-install your Ghost instance from scratch. However, your data should still be fine as long as you back it up. See the backup instructions above.
Since beta.6 we've fixed and significantly improved how Ghost is configured, we know this is a pain, but it will be worth it!
The most common reason for a failed upgrade, is running out of memory.
ghost update fails for you, the first thing to try is
ghost update --force to retry the update.
If your ghost install is in a broken state after updating, you can use
ghost update --rollback to get back to the previous stable version.
Once you've stabilised again, and resolved any underlying problems, go into
/version and remove the broken version. Then run
ghost update again.
Ghost Admin + Cloudflare
If Ghost admin isn't loading for you, and you have Cloudflare enabled, please read this.