Upgrade to Ghost 5.11.0

On both domains I upgraded Ghost successfully by means of Watchtower Docker container update.
v5.11.0
v5.10.1
v5.10.0
v5.9.4
v5.9.3
v5.9.2
v5.9.1
v5.9.0
v5.8.3


A database migration from SQLite to MySQL 8 has to be executed, which mostly went smooth.
The following steps have to be done:

  • Export the content from the Ghost admin UI
  • Create the MySQL database with the following commands:
mysql> create database DATABASE_NAME;
mysql> create user 'USER_NAME'@'%' identified by 'PASSWORD';
mysql> grant all privileges on DATABASE_NAME.* TO 'USER_NAME'@'%';
mysql> flush privileges;
  • Reuse the Ghost content folder from the old Docker container
  • Recreate the Ghost Docker container with the following YAML config:
version: '3.1'

services:

  ghost:
    image: registry.bierochs.org/ghost:latest
    restart: unless-stopped
    ports:
      - 2369:2368
    environment:
      # see https://ghost.org/docs/config/#configuration-options
      database__client: mysql
      database__connection__host: db.bierochs.org
      database__connection__user: USER_NAME
      database__connection__password: PASSWORD
      database__connection__database: DATABASE_NAME
      mail__from: EMAIL
      mail__options__auth__pass: PASSWORD
      mail__options__auth__user: EMAIL_USER_NAME
      mail__options__host: MAIL_SERVER
      mail__options__port: MAIL_SERVER_PORT
      mail__transport: SMTP
      # this url value is just an example, and is likely wrong for your environment!
      url: https://blog.bierochs.org/blog/
      # contrary to the default mentioned in the linked documentation, this image defaults to NODE_ENV=production (so development mode needs to be explicitly specified if desired)
      #NODE_ENV: development
    volumes:
      - /var/docker_storage/ghost-blog-bierochs.org:/var/lib/ghost/content