Move Ghost blog to new VPS

A while ago Ghost made the decision to stop (unofficially) supporting mariadb. I made my Ghost installation work again fine, but with some loss of functionality in the admin. mariadb comes as standard on the new webdock Perfect Server LEMP stacks. To use mysql instead would require some pain, if not too much. Since Oracle do offer a generous free tier, I decided to try that out instead.

Setup vanilla Ghost installation

Full instructions for ubuntu: https://ghost.org/docs/install/ubuntu/

  1. Set up DNS A record
    I used a new URL for the initial setup, I may keep it or change it back to the current one.
  2. Create ghost specific user ghostuser
  3. nginx and MySQL already installed as per: https://notes.dot.kitchen/free-oracle-vps/
  4. Install Node
    I installed as per the instructions for Ghost, but if I was doing it again, I'd probably use nvm instead (or research a better way of being able to use different node versions for different services)
  5. Install Ghost CLI and Ghost
    The SSL setup failed. Two things were missing. I needed to create the directory /etc/nginx/snippets manually - it didn't exist but was expected for storing certificate details. Also crontab wasn't installed so there was a failure trying to create a periodic job to renew the certificate.
    Use ghost setup ssl to retry.

Migrate content

  1. Export and import posts
  2. Download and upload media
  3. Change theme
  4. Update header colour