Kubernetes powered PaaS that runs in your own cloud. https://porter.run
|
|
5 lat temu | |
|---|---|---|
| .github | 0869e96e0d Update staging.yaml | 5 lat temu |
| build | e013a3ff6e update release builds for cgo | 5 lat temu |
| cli | d1cbf60969 trigger oauth flow from CLI | 5 lat temu |
| cmd | 5be4d8e61b docker credential cache fix | 5 lat temu |
| dashboard | 765918036d save cluster | 5 lat temu |
| docker | f1ac0e4b69 cli major update | 5 lat temu |
| docs | ff17b95702 Create GCR.md | 5 lat temu |
| internal | 3ba9265959 Merge branch 'master' of https://github.com/porter-dev/porter into beta.3.integration-frontend | 5 lat temu |
| scripts | b133d644f8 portersvr with ldflag and proper overwrite | 5 lat temu |
| server | 3ba9265959 Merge branch 'master' of https://github.com/porter-dev/porter into beta.3.integration-frontend | 5 lat temu |
| .air.toml | f1ac0e4b69 cli major update | 5 lat temu |
| .dockerignore | d7b83fb445 onboarding with default sqlite | 5 lat temu |
| .gitignore | 507ba65d39 delete tf directory | 5 lat temu |
| LICENSE | 1f483861ca add MIT license | 5 lat temu |
| README.md | 656ea667c4 Update README.md | 5 lat temu |
| docker-compose.dev.yaml | a5c69a1bda stream ephemeral provisioning logs (no XACK) | 5 lat temu |
| go.mod | ece33b99f6 configured postrenderer and cred helper with do registry | 5 lat temu |
| go.sum | 3ba9265959 Merge branch 'master' of https://github.com/porter-dev/porter into beta.3.integration-frontend | 5 lat temu |
Porter is a Kubernetes-powered PaaS that runs in your own cloud provider. Porter brings the Heroku experience to Kubernetes without compromising its flexibility. Get started on Porter without the overhead of DevOps and fully customize your infra later when you need to.
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 called Helm and is compatible with standard Kubernetes management tools like kubectl, preparing your infra for mature DevOps work from day one.
One-click provisioning of a Kubernetes cluster in your own cloud console
Simple deploy of any public or private Docker image
Heroku-like GUI to monitor application status, logs, and history
Marketplace for one click add-ons (e.g. MongoDB, Redis, PostgreSQL)
Application rollback to previously deployed versions
Native CI/CD with buildpacks (Coming Soon)
For those who are familiar with Kubernetes and Helm:
values.yamlvalues.yamlRun the following command to grab the latest binary:
{
name=$(curl -s https://api.github.com/repos/porter-dev/porter/releases/latest | grep "browser_download_url.*/porter_.*_Darwin_x86_64\.zip" | cut -d ":" -f 2,3 | tr -d \")
name=$(basename $name)
curl -L https://github.com/porter-dev/porter/releases/latest/download/$name --output $name
unzip -a $name
rm $name
}
Then move the file into your bin:
chmod +x ./porter
sudo mv ./porter /usr/local/bin/porter
For Linux and Windows installation, see our Docs.
Sign up and log into Porter Dashboard.
Create a Project and select a cloud provider you want to provision a Kubernetes cluster in.
Put in your credentials, then Porter will automatically provision a cluster and an image registry in your own cloud account.
Build and push your Docker image to the provisioned registry with the CLI.
From the Templates tab on the Dashboard, select the Docker template. Click on the image you have just pushed, configure the port, then hit deploy.
We welcome all contributions. Submit an issue or a pull request to help us improve Porter!



