Update to Ghost 3.0 on Raspberry Pi or ASUS Tinker Board
Almost out of nowhere, the team behind Ghost released version 3.0 on 22 October 2019 and if you are anything like us at Ghost Pi in that you run Ghost on your Raspberry Pi, then you may have had a moment of panic as you wondered if the version would work.
Thankfully, it does. And it works just fine!
How to update to Ghost 3.0 on Raspbian
Updating Ghost on any single board computer (SBC) like the Raspberry Pi or ASUS Tinker Board is often a little more complicated than it should be. This is usually because these SBC's are not quite as powerful as the supported stacks Ghost runs on.
The trick to updating your Ghost blog running on a Raspberry Pi or ASUS Tinker Board is to ensure your SBC has as much system resource available as possible before attempting to upgrade. The following commands assume you are accessing your Raspberry Pi or ASUS Tinker Board over SSH:
boo@ghost-pi:~ $ cd /var/www/ghost
boo@ghost-pi:/var/www/ghost $ ghost stop
boo@ghost-pi:/var/www/ghost $ sudo npm i -g ghost-cli@latest
boo@ghost-pi:/var/www/ghost $ ghost update
boo@ghost-pi:/var/www/ghost $ ghost start
So what does this do? Let's break it down...
First, we'll be changing directory to where our Ghost blog is installed. Typically speaking, this is in /var/www/ghost
but if you followed our guide on setting up a RAID-1 array, then this may well be /mnt/raid1/nginx/ghost
:
boo@ghost-pi:~ $ cd /var/www/ghost
or
boo@ghost-pi:~ $ cd /mnt/raid1/nginx/ghost
Next, we'll stop the Ghost blog that is currently running to free up valuable system resources - specifically memory:
boo@ghost-pi:/var/www/ghost $ ghost stop
Then we'll ensure that our Raspberry Pi or ASUS Tinker Board is running the latest version of the Ghost CLI tool (which is v1.12.0 at the time of writing):
boo@ghost-pi:/var/www/ghost $ sudo npm i -g ghost-cli@latest
Now we can update Ghost using the Ghost CLI tool - this process can take around 15 - 20 minutes, so be patient:
boo@ghost-pi:/var/www/ghost $ ghost update
When we updated our Ghost blog from version 2.37.0 to version 3.0, we were prompted to confirm our upgrade process due to some of the changes. This included warnings around themes, but we just confirmed to proceed and everything finished as expected.
Assuming everything went smoothly and there were no issues, we can finally restart our Ghost blog by running:
boo@ghost-pi:/var/www/ghost $ ghost start
Once done, you should see the confirmation that your Ghost blog is up and running, on version 3.0! To check, you can always run:
boo@ghost-pi:/var/www/ghost $ ghost ls
+ sudo systemctl is-active ghost_ghostpi-pro
┌--------------------┬-------------------------------┬---------┬----------------------┬----------------------------┬------┬-----------------┐
| Name | Location | Version | Status | URL | Port | Process Manager |
|--------------------┼-------------------------------┼---------┼----------------------┼----------------------------┼------┼-----------------|
│ ghostpi-pro | /var/www/ghost | 3.0.0 | running (production) | https://ghostpi.pro | 2368 | systemd |
└--------------------┴-------------------------------┴---------┴----------------------┴----------------------------┴------┴-----------------┘
And that's it! You should now have Ghost 3.0, the latest version at the time of writing, running on your Raspberry Pi or ASUS Tinker Board.