Goal
Provision a production-ready fresh Ghost installation without a repository, template, Dockerfile, or external database.Prerequisites
- An Ignite or higher plan for StackShift Managed placement, or a connected node with 1 GB available
- DNS already pointing to StackShift if you want to attach a custom domain during creation
Workflow
1
Open Projects, choose Create project, then choose Ghost Site under Core Resources.
2
Enter the publication name, optionally enter a custom domain, and select a tested Ghost runtime.
3
Choose StackShift Managed or select an eligible connected node.
4
Review the runtime, domain, placement, managed mail, and owner-setup handoff.
5
Choose Create Ghost Site and wait while the project operation moves to completed.
6
Open Ghost Admin and finish the owner form at
/ghost/.Creation fields
- Publication name is required and becomes the StackShift project name.
- Tested runtime is required; the wizard defaults to the catalog’s default release.
- Custom domain is optional. When omitted, StackShift generates a domain from the project slug or subdomain.
- StackShift Managed is available to Ignite, Pro, and Enterprise accounts.
- Connected node requires a specific eligible node in the current creation UI.
- Transactional mail is enabled by default in the dashboard flow.
Provisioning sequence
The lifecycle worker leases each operation before processing it. Failed infrastructure work is retried up to five attempts, and the persisted step and last error survive an API restart. Creation returns HTTP 202 because the project exists before all runtime resources are ready.Durable lifecycle steps
Follow operation status
pendingmeans the operation is queued.in_progressmeans a worker owns the operation and is executing the reported step.waiting_reconcilemeans StackShift has requested node-side runtime work and is waiting for the runtime state to converge.completedmeans the lifecycle operation finished.failedincludeslast_errorand whether the operation is retryable.
Poll the operation returned by create
Complete Ghost owner setup
Choose Open Ghost Admin after the site is running. The URL ends in/ghost/ and opens Ghost’s own owner-creation screen. Create the owner there; do not enter the password into StackShift environment variables, support tickets, or project settings.
After creation
- Use Restart if Ghost is running but needs a clean process restart.
- Create a recovery point before theme, integration, or content changes that could be difficult to reverse.
- Attach a verified custom domain before publishing widely.
- Verify a StackShift Mail sender domain if you want a branded transactional sender.
- Connect Mailgun only if you plan to send Ghost newsletters.
Expected result
The Ghost overview reports a running runtime and MySQL database, the public URL loads, and the Ghost owner account exists only inside Ghost.
Common failures
Related guides
Native Ghost hosting overview
How StackShift runs Ghost as a first-class native runtime with a pinned official image, managed MySQL 8, persistent content, plan-aware isolation, integrated mail, and durable lifecycle operations.
Ghost Admin and custom domains
Complete owner setup in Ghost, understand the generated URLs, attach a custom domain, and keep Ghost’s canonical URL aligned with StackShift routing.
Ghost transactional mail and newsletters
Use StackShift Mail for Ghost transactional messages, select a verified sender, and optionally connect Mailgun for Ghost bulk newsletters without exposing provider secrets.
Ghost troubleshooting and limitations
Diagnose native Ghost provisioning, database, image, routing, mail, recovery, staging, and upgrade failures using persisted operation state and clear resource boundaries.