# hunvreus/devpush

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/hunvreus-devpush).**

4,492 stars · 164 forks · Python · mit

## Links

- GitHub: https://github.com/hunvreus/devpush
- Homepage: https://devpu.sh
- awesome-repositories: https://awesome-repositories.com/repository/hunvreus-devpush.md

## Topics

`continuous-deployment` `deployment` `django` `fastapi` `flask` `github` `nextjs` `nodejs` `php` `python` `vercel`

## Description

Devpush is a self-hosted Git-based PaaS that automates the deployment of containerized applications. It maps each Git branch to an isolated Docker environment, creating a multi-environment runtime where staging, production, and other workflows run in parallel with scoped configuration and encrypted variables. Deployments are triggered automatically by Git push events via a configured GitHub App, managing the full lifecycle from build to release with zero-downtime rollouts and instant rollback.

The platform includes a built-in Let's Encrypt SSL manager that automatically provisions and renews TLS certificates for custom domains, and a Traefik-based reverse proxy routes incoming traffic to the correct deployment container based on domain and environment rules. Real-time build and runtime logs are streamed to a web interface with search and filter capabilities for debugging. Team-based access control enforces permissions through Owner, Admin, and Member roles, scoping access to projects, deployments, and storage volumes that persist across deployments.

Beyond core deployment, Devpush provides a registry-based runner catalog with pre-configured and custom runtime images, allowing language-agnostic deployment presets. Environment variables can be injected per environment or globally, and storage volumes can be attached to specific environments for stateful application data. The platform supports custom domain attachment, DNS routing, and backup and restore of application data for disaster recovery. Access can be restricted by email, domain, or pattern through an allowlist system.

## Tags

### DevOps & Infrastructure

- [Zero-Downtime Rollout Orchestrators](https://awesome-repositories.com/f/devops-infrastructure/containerized-deployment-orchestration/zero-downtime-rollout-orchestrators.md) — An orchestrator that manages the lifecycle of containerized applications across isolated environments with zero-downtime rollouts.
- [Self-Hosted PaaS Platforms](https://awesome-repositories.com/f/devops-infrastructure/self-hosted-paas-platforms.md) — Provides a self-hosted PaaS that automates containerized application deployment from Git pushes with multi-environment management.
- [Environment Mappings](https://awesome-repositories.com/f/devops-infrastructure/configuration-management/environment-management/environment-variable-management/environment-mappings.md) — Maps branches to environments and stores encrypted environment variables per environment. ([source](https://cdn.jsdelivr.net/gh/hunvreus/devpush@main/README.md))
- [Runtime Environment Variable Injections](https://awesome-repositories.com/f/devops-infrastructure/configuration-management/environment-management/environment-variable-management/environment-variable-configurations/environment-variable-configuration/runtime-environment-variable-injections.md) — Passes project-specific environment variables and runtime-specific configuration values to the execution environment. ([source](https://devpu.sh/docs/basics/presets-and-runners/))
- [Containerized Application Management](https://awesome-repositories.com/f/devops-infrastructure/containerized-application-management.md) — Building, deploying, and rolling back Docker containers with zero-downtime releases and persistent storage attachments.
- [Containerized Environments](https://awesome-repositories.com/f/devops-infrastructure/containerized-environments.md) — Maps each Git branch to an isolated Docker environment for parallel deployments.
- [Branch-Based URL Aliases](https://awesome-repositories.com/f/devops-infrastructure/deployment-aliasing/branch-based-url-aliases.md) — Provides unique deployment URLs plus branch- and environment-based aliases that point to the latest deployment. ([source](https://devpu.sh/docs/basics/deployments/))
- [Git-Triggered Deployment Pipelines](https://awesome-repositories.com/f/devops-infrastructure/git-triggered-deployment-pipelines.md) — Automates deployments triggered by Git push events via webhooks.
- [Runner Image Specifications](https://awesome-repositories.com/f/devops-infrastructure/infrastructure/infrastructure-as-code/configuration-management/runner-image-specifications.md) — Provides a registry-based runner catalog for selecting pre-configured and custom runtime images. ([source](https://devpu.sh/docs/basics/presets-and-runners/))
- [Runner Image Managers](https://awesome-repositories.com/f/devops-infrastructure/continuous-integration-systems/runner-image-managers.md) — Pulls or clears Docker images for runners through the admin panel, including support for local images on the host daemon. ([source](https://devpu.sh/docs/guides/customize-registry-catalog/))
- [Redeployments](https://awesome-repositories.com/f/devops-infrastructure/deployment-management/deployment-configuration/redeployments.md) — Re-runs a previous deployment with current project settings, applying configuration changes like environment variables. ([source](https://devpu.sh/docs/basics/deployments/))
- [Environment-Scoped Volume Attachments](https://awesome-repositories.com/f/devops-infrastructure/storage-configurations/storage-connection-apis/storage-connection-management/environment-scoped-volume-attachments.md) — Attaches storage volumes to a project and scopes them to specific deployment environments. ([source](https://devpu.sh/docs/basics/projects/))
- [Runtime Runner Catalogs](https://awesome-repositories.com/f/devops-infrastructure/virtual-machine-image-packaging/image-catalogs/runtime-runner-catalogs.md) — Manages pre-configured and custom runtime images through a registry catalog.

### Business & Productivity Software

- [Team Role Assignments](https://awesome-repositories.com/f/business-productivity-software/team-member-management/team-role-assignments.md) — Assigns Owner, Admin, or Member roles to control who can manage projects, deployments, and team settings. ([source](https://devpu.sh/docs/basics/))
- [Team Member Invitations](https://awesome-repositories.com/f/business-productivity-software/team-member-management/team-member-invitations.md) — Invites team members and assigns role-based permissions to control project access. ([source](https://devpu.sh/docs/))
- [Team-Owned Deployments](https://awesome-repositories.com/f/business-productivity-software/team-member-management/team-role-assignments/team-owned-deployments.md) — Groups projects, deployments, and storage under team ownership with role-based access. ([source](https://devpu.sh/docs/basics/))

### Development Tools & Productivity

- [Team-Scoped Access Control](https://awesome-repositories.com/f/development-tools-productivity/team-management/team-scoped-access-control.md) — Organizing projects and deployments under teams with role-based permissions and email domain restrictions for collaborative workflows.

### Networking & Communication

- [Reverse Proxies](https://awesome-repositories.com/f/networking-communication/reverse-proxies.md) — Routes incoming traffic to deployment containers based on domain and environment rules.
- [Traffic Routers](https://awesome-repositories.com/f/networking-communication/traffic-routers.md) — Routes external HTTP and HTTPS traffic to the correct deployment container using custom domains and branch-based URLs.
- [Deployment DNS Records](https://awesome-repositories.com/f/networking-communication/mail-servers/dns-routing-configurations/deployment-dns-records.md) — Configures DNS A records for the app hostname and a wildcard subdomain for deployments, optionally on separate domains for isolation. ([source](https://devpu.sh/docs/installation))

### Operating Systems & Systems Programming

- [Branch-Mapped Runtime Managers](https://awesome-repositories.com/f/operating-systems-systems-programming/runtime-environment-managers/branch-mapped-runtime-managers.md) — A runtime manager that maps Git branches to isolated environments with scoped configurations and environment variables.

### Programming Languages & Runtimes

- [Deployment Runtime Presets](https://awesome-repositories.com/f/programming-languages-runtimes/custom-runtime-logic/deployment-runtime-presets.md) — Selects a pre-configured build and runtime environment for a specific programming language or framework to standardize deployments. ([source](https://devpu.sh/docs/basics/presets-and-runners/))

### Security & Cryptography

- [Role-Based Access Control](https://awesome-repositories.com/f/security-cryptography/role-based-access-control.md) — Assigns roles to team members and controls what each role can do within the platform. ([source](https://cdn.jsdelivr.net/gh/hunvreus/devpush@main/README.md))
- [SSL Certificate Managers](https://awesome-repositories.com/f/security-cryptography/ssl-certificate-managers.md) — Provisioning and renewing Let's Encrypt certificates automatically for custom domains on deployed applications.
- [Email Domain Restrictions](https://awesome-repositories.com/f/security-cryptography/access-restrictions/email-domain-restrictions.md) — Blocks all users except those whose email domain matches an allowlist entry. ([source](https://devpu.sh/docs/guides/restrict-access-allowlist/))
- [SSL/TLS Certificate Management](https://awesome-repositories.com/f/security-cryptography/cryptography/ssl-tls-certificate-management.md) — Automatically provisions and renews Let's Encrypt TLS certificates for custom domains.
- [Wildcard Certificate Management](https://awesome-repositories.com/f/security-cryptography/wildcard-certificate-management.md) — Uses DNS-01 challenge with Cloudflare to obtain a wildcard Let's Encrypt certificate. ([source](https://devpu.sh/docs/installation))

### Software Engineering & Architecture

- [Branch-to-Environment Mappers](https://awesome-repositories.com/f/software-engineering-architecture/application-lifecycle-management/configuration-management/environment-variable-management/branch-to-environment-mappers.md) — Mapping Git branches to isolated environments with scoped configuration and encrypted variables for staging and production workflows.
- [Scoped Environment Variable Injections](https://awesome-repositories.com/f/software-engineering-architecture/application-lifecycle-management/configuration-management/environment-variable-management/environment-variables/scoped-environment-variable-injections.md) — Adds environment variables individually or from a .env file, scoping them to specific environments or all environments with override support. ([source](https://devpu.sh/docs/basics/projects/))
- [Deployment Project Definitions](https://awesome-repositories.com/f/software-engineering-architecture/project-configuration/deployment-project-definitions.md) — Defines a project's name, avatar, Git repository, environments, environment variables, and custom domains to control deployments. ([source](https://devpu.sh/docs/basics/projects/))

### System Administration & Monitoring

- [Deployment Log Streaming](https://awesome-repositories.com/f/system-administration-monitoring/real-time-monitoring/log-stream-monitors/deployment-log-streaming.md) — Streams real-time build and runtime logs for deployments with search and filter capabilities. ([source](https://devpu.sh/docs/basics/deployments/))
- [Runtime Log Monitors](https://awesome-repositories.com/f/system-administration-monitoring/runtime-log-monitors.md) — Streams live, searchable logs for both build and runtime activity. ([source](https://cdn.jsdelivr.net/gh/hunvreus/devpush@main/README.md))
- [Deployment Troubleshooting](https://awesome-repositories.com/f/system-administration-monitoring/deployment-troubleshooting.md) — Checks service logs and Traefik status to diagnose common deployment issues. ([source](https://devpu.sh/docs/installation))
- [Deployment Log Filters](https://awesome-repositories.com/f/system-administration-monitoring/logging-and-telemetry/log-search-engines/deployment-log-filters.md) — Collects real-time logs and allows searching by keyword and filtering by deployment, environment, date, or branch. ([source](https://devpu.sh/docs/basics/projects/))
- [Container Log Retrieval](https://awesome-repositories.com/f/system-administration-monitoring/monitoring-and-observability/observability-platforms/log-management-systems/log-management-services/container-log-retrieval.md) — Displays logs from all running containers or a specific service to help debug application issues. ([source](https://devpu.sh/docs/operations/))

### Web Development

- [Instant Rollbacks](https://awesome-repositories.com/f/web-development/application-deployment/deployment-rollbacks/deployment-state-resets/instant-rollbacks.md) — Swaps the active deployment for an environment to instantly revert to a previous version. ([source](https://devpu.sh/docs/basics/deployments/))
- [Deployment Domain Attachments](https://awesome-repositories.com/f/web-development/custom-domain-hosting/deployment-domain-attachments.md) — Routes traffic from a custom domain to a deployment or sets up a redirect with a configurable HTTP status code. ([source](https://cdn.jsdelivr.net/gh/hunvreus/devpush@main/README.md))

### Data & Databases

- [Application Data Restorations](https://awesome-repositories.com/f/data-databases/data-restoration-tools/application-data-restorations.md) — Replaces current data with a previously saved snapshot to recover from failures or roll back changes. ([source](https://devpu.sh/docs/operations/))
- [Persistent Storage Volumes](https://awesome-repositories.com/f/data-databases/persistent-storage-volumes.md) — Attaches storage volumes to environments that persist across deployments.
