Kubernetes powered PaaS that runs in your own cloud. https://porter.run

Rudi MK 0843597717 Added some basic notes on choosing the right kind of DNS record for Porter-provisioned K8s load balancers. пре 4 година
.github 57a335f01d Merge branch 'master' into belanger/por-83-usage-enforcement пре 4 година
api 2098ee6bf0 fix billing team id пре 4 година
build 7efceae5c6 add back windows releases, fix compilation of portersvr and cred helper пре 4 година
cli e63f74cb23 Switched from using Heroku's buildpack to Paketo's full builder image. пре 4 година
cmd 80cdba9252 Merge branch 'belanger/por-132-vault-storage-backend' into nico/new-onboarding-flow пре 4 година
dashboard b0dae86d85 fixed aws credential form z-index issue пре 4 година
docker ead3b37899 fix compile issues пре 4 година
docs 0843597717 Added some basic notes on choosing the right kind of DNS record for Porter-provisioned K8s load balancers. пре 4 година
ee 2098ee6bf0 fix billing team id пре 4 година
helm 6df88f8f2d [wip] removed pointers to repository interface, added authn and authn testing suite пре 5 година
internal d0a6af596d guess aws cluster id based on cluster name пре 4 година
scripts 4e39df7def add migration option for vault пре 4 година
services 2f6b969c36 add safer vault migration option пре 4 година
.air.toml 025693a4f3 create ee dockerfile and change version ldflag пре 4 година
.dockerignore 4283d8750d remove accidental overwrite of infra modules пре 4 година
.gitignore b5d78b2705 attempt to fix merge conflicts пре 4 година
.prettierignore 4369eef02d prettier пре 5 година
CONTRIBUTING.md 556dd5fd52 Update CONTRIBUTING.md пре 4 година
LICENSE f7caf337e7 update license пре 4 година
Makefile 4e39df7def add migration option for vault пре 4 година
README.md 27aebecb18 update all locations with broken docs link пре 5 година
docker-compose.dev-secure.yaml c337377e3f add team name to slack integration пре 4 година
docker-compose.dev.yaml e065e9c33c api endpoint changes пре 4 година
go.mod 2ce57f57ae add invite endpoints пре 4 година
go.sum b5d78b2705 attempt to fix merge conflicts пре 4 година

README.md

Porter

MIT License Go Report Card Discord Twitter

Porter is a Kubernetes-powered PaaS that runs in your own cloud provider. Porter brings the Heroku experience to your own AWS/GCP account, while upgrading your infrastructure to Kubernetes. Get started on Porter without the overhead of DevOps and customize your infrastructure later when you need to.

Provisioning View

Community and Updates

For help, questions, or if you just want a place to hang out, join our Discord community.

To keep updated on our progress, please watch the repo for new releases (Watch > Custom > Releases) and follow us on Twitter!

Why Porter?

A PaaS that grows with your applications

A traditional PaaS like Heroku is great for minimizing unnecessary DevOps work but doesn't offer enough flexibility as your applications grow. Custom network rules, resource constraints, and cost are common reasons developers move their applications off Heroku beyond a certain scale.

Porter brings the simplicity of a traditional PaaS to your own cloud provider while preserving the configurability of Kubernetes. Porter is built on top of a popular Kubernetes package manager helm and is compatible with standard Kubernetes management tools like kubectl, preparing your infra for mature DevOps work from day one.

image

Features

Basics

  • One-click provisioning of a Kubernetes cluster in your own cloud console
    • ✅ AWS
    • ✅ GCP
    • ✅ Digital Ocean
  • Simple deploy of any public or private Docker image
  • Auto CI/CD with buildpacks for non-Dockerized apps
  • Heroku-like GUI to monitor application status, logs, and history
  • Application rollback to previously deployed versions
  • Zero-downtime deploy and health checks
  • Monitor CPU, RAM, and Network usage per deployment
  • Marketplace for one click add-ons (e.g. MongoDB, Redis, PostgreSQL)

DevOps Mode

For those who are familiar with Kubernetes and Helm:

  • Connect to existing Kubernetes clusters that are not provisioned by Porter
  • Visualize, deploy, and configure Helm charts via the GUI
  • User-generated form overlays for managing values.yaml
  • In-depth view of releases, including revision histories and component graphs
  • Rollback/update of existing releases, including editing of raw values.yaml

Graph View

Docs

Below are instructions for a quickstart. For full documentation, please visit our official Docs.

Getting Started

  1. Sign up and log into Porter Dashboard.

  2. Create a Project and put in your cloud provider credentials. Porter will automatically provision a Kubernetes cluster in your own cloud. It is also possible to link up an existing Kubernetes cluster.

  3. 🚀 Deploy your applications from a git repository or Docker image registry.

Running Porter Locally

While it requires a few additional steps, it is possible to run Porter locally. Follow this guide to run the local version of Porter.

Want to Help?

We welcome all contributions. If you're interested in contributing, please read our contributing guide and join our Discord community.

porter