Skip to content

NixM0nk3y/project-alpaca

Repository files navigation

Welcome to Project Alpaca

Run a wordpress installation from a single lambda process. The software stack should be functional but considered to be proof-of-concept to explore various elements of tech rather than a recommended hosting pattern.

Architecture

The lambda uses the AWS Lambda Adaptor to bridge AWS event driven gateway onto a more traditional HTTP stack. In this case the stack is a Caddy / PHP / Wordpress install.

Wordpress data storage is backed by SQLite which is replicated into S3 storage via litestream. Previous state is restored to the lambda on cold-start. Concurrent access to the datastore by multiple lambdas is conveniently ignored and likely to be unstable.

NOTE: the stack uses a arm64 architecture and will require docker builds of the supporting lambda software. This will require a reasonable amount of cross-architecture docker builds ( we require php with modern SQLite support ).

diagram

Useful commands

  • make clean remove any intermediate state
  • make diff compare deployed stack with current state
  • make deploy deploy this stack to your default AWS account/region