Removing Built-in Story Theme from Ghost
Quick Solution: Fresh Start (Easiest)
Since you’re okay with starting fresh, this is the cleanest approach:
cd ghost-theme
# Stop and remove everything (including volumes)
docker-compose down -v
# Start fresh
docker-compose up -d
Then:
- Go to
http://localhost:2368/ghost - Complete the setup (create admin account)
- Upload your custom theme via Settings → Design → Upload a theme
- Activate it
Alternative: Remove Built-in Theme Only
If you want to keep your data but remove the built-in theme:
cd ghost-theme
# Access the container
docker-compose exec ghost bash
# Inside container, list themes
ls -la /var/lib/ghost/content/themes/
# Remove the built-in story-theme (if it exists separately)
rm -rf /var/lib/ghost/content/themes/story-theme
# Exit container
exit
# Restart Ghost
docker-compose restart ghost
Important Note
Your docker-compose.yml mounts your local theme directory:
- ./:/var/lib/ghost/content/themes/story-theme
This means your local ghost-theme/ directory IS the theme in Ghost. If there’s a conflict, it might be because:
- Ghost created a default theme with the same name
- You uploaded a theme that created a duplicate
Recommended: Fresh Start
Since you’re okay with starting fresh, I recommend:
cd ghost-theme
docker-compose down -v
docker-compose up -d
This gives you a clean slate. Then:
- Complete Ghost setup
- Upload your custom theme (built with
npm run build && npm run zip) - Activate it
This ensures only YOUR theme exists, not any built-in version.