Skip to content

upton/flynn

 
 

Repository files navigation

Welcome to Flynn

Flynn is a next generation open source Platform as a Service (PaaS).

Unlike most PaaS's Flynn can run stateful services as well as 12 factor apps. This includes built-in database appliances (just Postgres to start). Flynn is modular so users can easily modify, upgrade, and replace components.

Flynn components are divided into two layers.

Layer 0 is a low-level resource framework inspired by the Google Omega paper. Layer 0 also includes service discovery

Layer 1 is a set of higher level components that makes it easy to deploy and maintain applications and databases.

You can learn more about the project at the Flynn website.

Status

Flynn is in active development and currently unsuitable for production use.

Users are encouraged to experiment with Flynn but should assume there are stability, security, and performance weaknesses throughout the project. This warning will be removed when Flynn is ready for production use.

Please report bugs as issues on the appropriate repository. If you have a general question or don't know which repo to use, report them here.

Getting Started

We built a tool for launching Flynn clusters on your Amazon Web Services account here.

You can also download a demo environment for your local machine or learn about the components below.

Components

Layer 0

flynn-host The Flynn host service

discoverd The Flynn service discovery system

Layer 1

flynn-controller The Flynn Controller for the management of applications running on Flynn via an HTTP API

flynn-bootstrap Bootstraps Flynn Layer 1

gitreceived An SSH server made specifically for accepting git pushes that will trigger an auth script and then a receiver script to handle the push. (This is a more advanced, standalone version of gitreceive.)

flynn-cli Command-line Flynn HTTP API client

flynn-receive Flynn's git deployer

slugbuilder A tool using Docker and Buildpacks to produce a Heroku-like slug given some application source.

slugrunner A Docker container that runs Heroku-like slugs produced by slugbuilder.

flynn-demo Flynn development environment in a VM

strowger Flynn TCP/HTTP router

shelf A simple, fast HTTP file service

sdutil Service discovery utility for systems based on go-discover

flynn-postgres Flynn PostgreSQL database appliance

taffy Taffy pulls repos and deploys them to Flynn

Libraries

go-flynn

go-discoverd

rpcplus

Contributing

We welcome and encourage community contributions to Flynn.

Since the project is still unstable, there are specific priorities for development. Pull requests that do not address these priorities will not be accepted until Flynn is production ready.

Please familiarize yourself with the Contribution Guidelines and Project Roadmap before contributing.

There are many ways to help Flynn besides contributing code:

  • Fix bugs or file issues
  • Improve the documentation including this website
  • Contribute financially to support core development

Learn more at Flynn.io.

Flynn is a trademark of Prime Directive, Inc.

About

A next generation open source platform as a service (PaaS)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published