Skip to content

yobasystems/alpine-ghost

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

59 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Ghost container image running on Alpine Linux

Docker Automated build Docker Pulls Docker Stars

Alpine Version Ghost Version

This container image (yobasystems/alpine-ghost) is based on the minimal Alpine Linux using the yobasystems/alpine-nodejs base container image yobasystems/alpine-nodejs.

Alpine Version 3.19.1 (Released 2023-01-26)

Ghost Version 5.82.1

Table of Contents

πŸ”οΈ What is Alpine Linux?

Alpine Linux is a Linux distribution built around musl libc and BusyBox. The image is only 5 MB in size and has access to a package repository that is much more complete than other BusyBox based images. This makes Alpine Linux a great image base for utilities and even production applications. Read more about Alpine Linux here and you can see how their mantra fits in right at home with container images.

What is Ghost?

Ghost is a powerful app for new-media creators to publish, share, and grow a business around their content. It comes with modern tools to build a website, publish content, send newsletters & offer paid subscriptions to members.

✨ Features

  • Minimal size only, minimal layers
  • Memory usage is minimal on a simple install.

πŸ—οΈ Architectures

  • :amd64, :x86_64 - 64 bit Intel/AMD (x86_64/amd64)
  • :arm64v8, :aarch64 - 64 bit ARM (ARMv8/aarch64)
  • :arm32v7, :armhf - 32 bit ARM (ARMv7/armhf)

πŸ“ PLEASE CHECK TAGS BELOW FOR SUPPORTED ARCHITECTURES, THE ABOVE IS A LIST OF EXPLANATION

🏷️ Tags

  • :latest latest branch based (Automatic Architecture Selection)
  • :master master branch usually inline with latest
  • :amd64, :x86_64 amd64 based on latest tag but amd64 architecture
  • :aarch64, :arm64v8 Armv8 based on latest tag but arm64 architecture
  • :armhf, :arm32v7 Armv7 based on latest tag but arm32 architecture
  • :v5.82.1 version number related to Ghost version

πŸ“ Layers & Sizes

Version MicroBadger Layers (tag) MicroBadger Size (tag)

Version MicroBadger Layers (tag) MicroBadger Size (tag)

Version MicroBadger Layers (tag) MicroBadger Size (tag)

πŸš€ How to use this image

Environment Variables:

Main config.js parameters:

  • URL: specify the ghost url with http:// or https://
  • GID: 1027 specify the Group ID of the files
  • UID: 1027 specify the User ID of the files
  • SYNTAX_HIGHLIGHTING: True specify if Syntax Highlighting is enabled in ghost
  • HIGHLIGHTER_COLOR: dark specify the colour scheme for Syntax Highlighting

Email (defaults to False meaning no emails):

  • CUSTOM_SMTP: specify custom email service. This can be True or False.
  • SERVICE: specify email service. This can be Mailgun, Sendgrid or Gmail.
  • SMTP_USER: specify email service smtp username
  • SMTP_PASS: specify email service smtp password

http://support.ghost.org/config/

Creating an instance

docker run --name some-ghost -d yobasystems/alpine-ghost

This will start a Ghost instance listening on the default Ghost port of 2368.

If you'd like to be able to access the instance from the host without the container's IP, standard port mappings can be used:

docker run --name some-ghost -p 80:2368 -d yobasystems/alpine-ghost

Then, access it via http://localhost or http://host-ip in a browser.

You can also point the image to your existing content on your host:

docker run --name some-ghost -v /path/on/host:/ghost/content yobasystems/alpine-ghost

Alternatively you can use a data container that has a volume that points to /ghost and then reference it:

docker run --name some-ghost --volumes-from some-ghost-data yobasystems/alpine-ghost

Docker Compose example:

(Please pass your own credentials or let them be generated automatically, don't use these ones for production!!)
ghost:
  image: yobasystems/alpine-ghost
  command: npm start --production
  environment:
    URL: https://www.example.co.uk
    SYNTAX_HIGHLIGHTING: True
    HIGHLIGHTER_COLOR: dark
    CUSTOM_SMTP: True
    SERVICE: Sendgrid
    SMTP_USER: user@example.co.uk
    SMTP_PASS: RANd0Mpa55w0Rd
  expose:
    - "2368"
  volumes:
    - /app/ghost:/ghost/content
  domainname: www.example.co.uk
  restart: always

πŸ” Image contents & Vulnerability analysis

PACKAGE NAME PACKAGE VERSION VULNERABILITIES

πŸ“š Source Repositories

🐳 Container Registries

πŸ”— Links

πŸ’° Donation

BMAC

BITCOIN

ETHEREUM