Settings

Theme

Show HN: OpenRun – Declarative Deployments to Docker or Kubernetes

github.com

21 points by ajayvk 2 months ago · 0 comments · 2 min read

Reader

I have been building https://github.com/openrundev/openrun for the last few years and recently added Kubernetes support https://openrun.dev/docs/container/kubernetes. OpenRun is a declarative web app deployment platform, built for teams to deploy internal tools.

There are many tools which try to simplify application deployments, but not many support declarative deployments. Even if app sources are fetched from git, creating new apps or updating app config requires imperative commands. Kubernetes is the dominant declarative approach, but it takes too much YAML to manage an app with Kubernetes. OpenRun supports a limited use case, deploying web apps for internal users across a team. For that use case, it supports declarative deployments on top of Docker/Podman or Kubernetes, with a very simple config.

Some of the unique features of OpenRun are:

- All apps have a staging env, code and config changes are staged before being promoted to prod

- Supports OIDC/SAML integration, allowing you to control access to apps using RBAC policies

- Full solution which handles builds, CD and request routing. Does not require additional tooling like Jenkins/ArgoCD etc

OpenRun can run on a single machine, in which case it directly deploys the container to Docker/Podman. When deployed to Kubernetes, OpenRun builds the images using Kaniko and deploys apps as a Kubernetes deployment, using server side apply to make updates.

The whole Starlark based config for creating apps is just:

    app(path="/streamlit/uber", source="github.com/streamlit/demo-uber-nyc-pickups",
        spec="python-streamlit") # python-streamlit knows how route requests for Streamlit
    app(path="/myapp", source="github.com/example/example",
        spec="container") # container spec works for any app which has a Dockerfile

While mainly built for teams, OpenRun is the easiest way to deploy web apps and share them with friends and family https://openrun.dev/docs/use-cases/personal/. You can limit who has access to the apps using OAuth authentication.

No comments yet.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection