Giter VIP home page Giter VIP logo

serverless-ghost's Introduction

serverless-ghost

The Ghost project ported to AWS Lambda.

serverless-ghost is the easiest way to get a professional blogging platform running (mostly) on serverless technologies on AWS.

Caution: Beta software, here be dragons!

Features

Known to work

Don't expect 100% feature parity yet!

  • Basic CRUD of posts and pages
  • Emails
  • CDN
  • Integration with Sentry (though they don't really advertise it)
  • Upload themes
  • Upload images and assets
  • Api keys

Untested

They may work.

  • Webhooks
  • Newsletters
  • Update new versions of Ghost (but it should work)

Additional features

serverless-ghost provides a few facilities:

AWS integrations

The following are made possible/easier with serverless-ghost:

  • Serve Ghost on your own domain (through Api Gateway).
  • Creates a VPC dedicated to your Ghost installation.
  • Free SSL certificates with Certificate Manager.
  • Send emails with Amazon SES (e.g "forgot password" and welcome emails)
  • Option to use regular Mysql or Aurora serverless
  • Filesystem to host themes and other content with Amazon EFS
  • Upload assets onto Amazon S3
  • Deliver assets via Amazon CloudFront CDN
  • Secure access to your database with VPC and tight security groups
  • Automated IAM setup for Ghost to interact with the various services

Deployment instructions

TLDR

  • Click Launch stack:
  • Declare your desired DomainName stack parameter.
  • Check output for how to validate your SSL certificate.
  • Put the stack output WebsiteDns as CNAME in your dns settings
  • Hit the PingUrl given in the stack output
  • Access the blog at https://${DomainName}

This is what will get deployed:

Image automatically generated with cfnbuddy

The details

I expanded on the above in the deployment.md file. There are explanations, screenshots and documented issues there. Please read through it to make the most out of this project.

Non-goals

Making Ghost cloud-native or any form of re-architecting is out of scope. However, we do want to leverage AWS integrations where sensible as long as maintaining a separate fork is not required.

Licensing

Custom code provided in this repository is released under the Simplified BSD Licence.

This project includes code Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. See LICENCE-SAMPLECODE for details.

Upstream project is Copyright (c) 2013-2020 Ghost Foundation. See LICENCE-Ghost for details.

serverless-ghost's People

Stargazers

Scotty Miller avatar Oliver Abreu avatar Ivan Klimchuk avatar Yusuf Mayet avatar raye peng avatar  avatar Jan avatar  avatar Jason Hao avatar Albertus Angga Raharja avatar nein avatar  avatar  avatar DavidLee@TW avatar Alexander avatar Jun avatar Hao Tang avatar Masas Dani avatar Jesper Almstrom avatar  avatar Diligent Marketing Solutions avatar Can avatar  avatar Balázs Buri avatar Colin Fahrion avatar Ozgur Cem Sen avatar Kenneth Haugland avatar Alexey Kinev avatar Ryan Coleman avatar Sam Johnson avatar Jib avatar  avatar Loki Chan avatar Jonathan Lovera avatar Derek Ardolf avatar  avatar Slava Kurilyak avatar Michael Warkentin avatar Nirmal Thacker avatar Aravind Vijayan avatar Faul avatar  avatar Hassan Khan avatar rowan avatar Benjamin Genz avatar briancaffey avatar

Watchers

James Cloos avatar Jeshan Giovanni BABOOA avatar Ryan Coleman avatar Yusuf Mayet avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.