Publishing platform for newsletters, blogs and paid memberships
CIS Level 1 hardened Ubuntu 24.04 LTS image by Lynxroute · unique credentials at first boot · CVE-scanned · SBOM and CIS report inside
| Cloud | Version | Software price | Last build | |
|---|---|---|---|---|
| AWS Marketplace EC2 AMI · all commercial regions | 6.72.0 | $0.05/hr Recommended instance: t3.medium · 5-day free trial | 2026-10-23 | Listing ↗ |
| Azure Marketplace VM image · plan payg-gen2 · Gen2 | 6.67.0 | $0.028/vCPU/hr Recommended VM: Standard_D2s_v3 | 2026-10-02 | Listing ↗ |
Software price only; cloud infrastructure is billed separately by the provider. Prices in USD.
| Base OS | Ubuntu 24.04 LTS |
| Hardening | CIS Level 1, Ubuntu 24.04 LTS (tailored) |
| License | MIT |
| Upstream | Ghost Foundation |
| Machine-readable | product.json · catalog.json |
Ghost is an open-source professional publishing platform from the Ghost Foundation, built as a Node.js application. It provides a clean writing and editing experience, customizable themes and templating, native membership and subscription management, email newsletters, SEO controls, and a full Content API and Admin API plus webhooks for integrations. Content, settings, and members are persisted in a MySQL 8.0 database; images and themes live on the local filesystem. Ghost is a self-hosted alternative to hosted publishing and newsletter services, with no per-seat fees and no vendor lock-in. This image runs Ghost on Node.js 22 with a bundled MySQL 8.0 database. MIT license. Ghost is a trademark of the Ghost Foundation; this independently hardened image is not affiliated with or endorsed by the Ghost Foundation.
Security hardening:
OS hardening (CIS Level 1):
Compliance artifacts:
Credentials are generated at first boot and written to /root/ghost-credentials.txt.
# subscribe once on the AWS Marketplace listing, then:
aws ec2 run-instances \
--image-id resolve:ssm:/aws/service/marketplace/prod-dcpo3yh5qzhd6/latest \
--instance-type t3.medium --key-name my-key --security-group-ids sg-xxxxxxxx# accept the plan terms once, then:
az vm image terms accept --publisher lynxroute --offer ghost --plan payg-gen2
az vm create -g my-rg -n ghost --size Standard_D2s_v3 \
--image lynxroute:ghost:payg-gen2:latest --admin-username azureuser --generate-ssh-keys
The most recent release with notes; the full release history is in product.json.