Open-source platforms that automate application deployment and infrastructure management directly from your git repositories.
Gitea is a self-hosted service designed for managing version control repositories, project issue tracking, and software artifact distribution. It provides a collaborative platform that enables teams to host their own source code, manage development tasks through integrated project boards, and store container images or language-specific packages within a unified environment. The platform distinguishes itself through a built-in automation engine that executes continuous integration and delivery pipelines directly triggered by repository events. It utilizes a background task queue to manage asynchronous operations and interacts directly with the file system for repository storage, ensuring data integrity while maintaining a lightweight footprint. Administrators can oversee the entire instance through a web-based dashboard or via programmatic access to system metadata and configuration. The application architecture supports modular expansion through a plugin-based extension system and processes requests through a middleware-driven pipeline. It is designed for flexible deployment, allowing users to compile the source code into a single executable binary that includes all necessary frontend assets and configuration defaults.
JimsGarage is a collection of shell scripts and automation tools designed to help individuals deploy and manage a wide range of self-hosted services on their own hardware. It provides a structured approach to setting up containerized applications, from media servers and document management systems to VPNs and monitoring stacks, all through automated Docker-based configurations. The project distinguishes itself by offering a comprehensive library of deployment recipes that cover the full lifecycle of a home server environment. This includes not just the services themselves, but also the supporting infrastructure such as reverse proxies with automatic SSL, authentication portals, DNS-level ad blocking, and secure remote access through WireGuard or mesh VPNs. It also addresses hardware-specific needs like GPU passthrough for transcoding or compute workloads, and integrates with cloud storage for backup and synchronization. Beyond individual service deployment, JimsGarage provides tools for orchestrating multi-node Docker Swarm clusters, managing DNS records, and setting up monitoring dashboards to track service health. The collection also covers specialized use cases like video surveillance with AI object detection, Zigbee home automation bridges, and self-hosted identity providers for single sign-on across services. The documentation and scripts are organized to guide users through each deployment step, from initial server setup to ongoing maintenance and updates.
This project is a self-hosted platform-as-a-service that provides a centralized management interface for deploying, configuring, and monitoring containerized applications and databases on private infrastructure. It functions as a visual control plane, automating the end-to-end lifecycle of services from source code to production. By managing container orchestration, networking, and resource allocation, it allows users to maintain full control over their own hardware while streamlining the delivery of software. The platform distinguishes itself through its agentless architecture, which uses secure shell connections to execute administrative tasks and manage remote servers without requiring persistent local software. It integrates directly with version control systems to trigger automated build and deployment pipelines, including the creation of temporary, isolated preview environments for every pull request. This workflow is supported by a declarative engine that uses templates to standardize the deployment of complex multi-container architectures and persistent database engines. Beyond core orchestration, the system handles the operational requirements of hosted services by managing dynamic reverse-proxy routing and automated SSL certificate lifecycles. It provides a comprehensive suite of infrastructure management tools, including browser-based terminal access for debugging, automated system dependency installation, and persistent state management via a central database. These capabilities ensure that infrastructure remains synchronized and consistent across multiple remote environments.
This project is a Git DevOps platform and repository manager providing a complete toolset for hosting Git repositories, managing project tasks, and automating software delivery pipelines. It functions as a self-hosted version control system with integrated access controls, an issue tracker for project management, and a CI/CD pipeline orchestrator. The platform distinguishes itself by integrating DevSecOps capabilities, specifically a security scanner designed to detect secret leaks and API keys during the code review process. It coordinates the entire DevOps lifecycle, linking version control and task tracking directly to automated testing and final software delivery. The system covers a broad range of operational capabilities, including continuous integration and delivery pipelines, collaborative code review workflows, and integrated project tracking via boards and wikis. It also includes infrastructure tools for role-based access control, resource-intensive request proxying, and the orchestration of reproducible test environments.
Dokku is a self-hosted platform as a service that automates the deployment and management of web applications on your own infrastructure. It functions as an infrastructure automation tool, providing a git-driven engine that triggers container builds, service orchestration, and release workflows directly from source code repositories. The platform distinguishes itself by using buildpack-based image construction to detect project structures and automate container creation without manual configuration. It manages the full application lifecycle through a simplified interface that abstracts low-level container runtime commands, while dynamically handling reverse-proxy routing and environment-variable-driven configuration to map traffic and decouple settings from the underlying host. Beyond core deployment, the system provides comprehensive infrastructure lifecycle management, including the automated setup of system dependencies and the configuration of administrative access controls. The platform is designed for modular expansion, allowing users to extend core functionality through a plugin system that hooks into lifecycle events. It is installed on Linux distributions using automated scripts to ensure consistent environment preparation.
GitBucket is a self-hosted Git hosting platform and forge designed for managing private repositories. Built with the Scala language, it provides a web interface for version control and is implemented as a server compatible with the GitHub API to ensure integration with existing third-party tools. The platform allows for customization of the version control environment through a plugin-based extension model, enabling the installation of third-party plugins to add specialized features. Its capability surface covers software project management via integrated issue trackers, pull requests, and wikis, alongside repository access control and enterprise user authentication through centralized directory services. The system also supports large file storage and provides a web-based interface for browsing and editing text files. Remote access is handled via SSH, and the system utilizes a REST-compatible API layer with cryptographically signed outgoing webhooks.
Husky is a Git hook manager that automates the installation and execution of version control lifecycle events within a project repository. It functions by redirecting standard version control event triggers to a centralized configuration directory, allowing teams to standardize development workflows and enforce code quality without requiring manual setup on every machine. The tool enables custom workflow automation by triggering shell scripts during operations such as committing or pushing code. It distinguishes itself by integrating directly into package manager lifecycles, ensuring that automated validation and formatting tasks are configured automatically during initial project setup. To maintain efficiency in diverse environments, it provides granular control over hook execution, including the ability to bypass automated checks globally or selectively through environment variables. The project supports a broad range of automation requirements by allowing developers to define new steps through executable files and supporting the invocation of non-shell interpreters for complex logic. It also includes diagnostic utilities to verify path configurations and file naming conventions, ensuring reliable execution across distributed teams and continuous integration pipelines.
1Panel is a centralized server management and container orchestration platform designed to simplify the administration of Linux-based infrastructure. It provides a unified web interface for managing containerized workloads, automating system maintenance, and configuring server resources. By acting as a comprehensive control plane, the platform streamlines the deployment of applications, databases, and web services while offering granular control over host system internals and security settings. What distinguishes this platform is its integrated support for private artificial intelligence infrastructure. It functions as an AI infrastructure manager, allowing users to host, configure, and deploy local machine learning models and multi-agent workflows directly on their private servers. This capability is complemented by a programmable reverse proxy that handles web traffic routing, load balancing, and SSL termination, providing a high-performance layer for managing incoming requests and security filtering. The platform covers a broad range of administrative tasks, including automated data backups, system updates, and the deployment of curated open-source software through a centralized marketplace. It supports declarative service configuration and event-driven scheduling to maintain operational reliability across diverse hosting environments. Users can manage these operations through a command-driven environment that integrates natural language processing for system maintenance and incident response. The software can be installed on a Linux server using a single command script to initialize the management dashboard and begin infrastructure operations immediately.
OneDev is a self-hosted, unified development platform that integrates Git repository hosting, issue tracking, and continuous integration and deployment (CI/CD) into a single system. It provides a comprehensive environment for managing the entire software lifecycle, allowing teams to coordinate code reviews, track development tasks, and automate build pipelines through a centralized interface. The platform distinguishes itself by offering browser-based, containerized development environments that allow developers to access and edit project files directly on the server. Its build system utilizes a directed acyclic graph to model complex, multi-step workflows, which can be executed across distributed infrastructure using remote agents. These build processes are highly flexible, supporting reusable templates, artifact promotion, and the provisioning of ephemeral services like databases during the execution lifecycle. Beyond its core automation capabilities, the platform includes robust project management tools featuring hierarchical permission inheritance and granular role-based access control. It supports collaborative development through advanced code review features, such as inline diff annotations and configurable approval policies. The system is designed for scalability and reliability, offering options for high-availability deployments, external database connectivity, and container orchestration within Kubernetes environments.
Maybe is a self-hosted financial platform designed for private deployment, providing a centralized interface to track investments, budgets, and net worth. By running the application on your own infrastructure, you maintain full control over your sensitive financial data and privacy. The platform is delivered as a containerized application suite, utilizing a declarative configuration framework to manage service lifecycles. It distinguishes itself through a structured approach to version control, allowing users to pin specific release tags to ensure environment consistency and perform controlled updates by pulling updated images from a remote registry. The system includes comprehensive tools for managing the application lifecycle, including database volume maintenance and the ability to reset persistent storage states. Deployment is handled through container orchestration, which ensures that the service remains portable and consistent across diverse hosting environments.
Soft Serve is a self-hosted Git server that authenticates users via SSH public keys and provides a terminal-based user interface for browsing repositories, files, and commits. It stores repository data and configuration in either SQLite or PostgreSQL, and supports role-based access control with four permission levels for managing repository visibility and write access. The server can be deployed via Docker or managed as a systemd service, and supports webhook notifications for push, collaborator, and branch or tag events to integrate with external automation workflows. It also enables server-side Git hook execution for custom pre- and post-push scripts, and provides HTTP access token generation for authenticated HTTP operations. Additional capabilities include anonymous repository cloning over HTTP and the native Git protocol, Git LFS object serving, automatic repository creation on push, and remote repository mirroring from public remotes. Repository management—including creation, renaming, deletion, import, and collaborator administration—is performed through SSH command-line interactions.
Watchtower is a container-based solution designed to automate the lifecycle management of Docker applications. It functions as a background service that monitors running containers, detects when new base image versions are available in registries, and automatically redeploys the containers to ensure they remain synchronized with the latest builds. The project distinguishes itself through its ability to orchestrate complex deployment workflows and maintain service availability during updates. It interacts directly with the container runtime to manage service dependencies and restart sequences, ensuring that dependent containers are handled in the correct order. Users can further customize the update process by defining lifecycle hooks that execute shell commands before or after a container is replaced, allowing for tailored initialization and cleanup tasks. Beyond automated updates, the tool provides extensive infrastructure observability and flexible management options. It supports event-driven updates via HTTP webhooks, declarative filtering to target specific containers, and secure remote management through encrypted communication and private registry authentication. Operational statistics can be exported to external monitoring systems, and the service can be configured to run in a passive observation mode to track image changes without performing automated redeployments.
GitBucket is a self-hosted Git platform and version control hosting service that provides a web interface for managing repositories, issues, and pull requests. Built with a Scala-based manager, it functions as a GitHub API compatible server, allowing it to integrate with external tools that rely on that specific industry schema. The platform distinguishes itself by integrating a Maven repository host for storing and retrieving Java build artifacts alongside source code. It also features a plugin architecture that enables the addition of custom logic and new functionality to the core system. Beyond version control, the system includes project management tools such as an integrated issue tracker with Kanban and Gantt boards. It covers a broad range of collaborative capabilities, including project wikis, continuous integration pipelines, and specialized file rendering for notebooks and diagrams. Security and access are managed through SSH key authentication, branch protection, and commit signature verification.
Portainer is a unified infrastructure management platform that provides a centralized control plane for deploying, monitoring, and managing containerized applications. It functions as an orchestration-abstraction layer, translating user actions into platform-specific API calls to maintain consistency across diverse container runtimes and cluster technologies. By organizing users, teams, and resources into a single interface, it enables granular role-based access control and lifecycle management for containerized services and stacks. The platform distinguishes itself through its support for distributed edge infrastructure and secure remote connectivity. It utilizes encrypted tunnels and outbound-only agent communication to manage geographically dispersed environments without requiring inbound port exposure. Furthermore, it integrates a GitOps-driven reconciliation engine that automatically synchronizes service configurations from version-controlled repositories, facilitating continuous delivery workflows and automated stack redeployments. Beyond its core orchestration capabilities, the platform offers extensive tools for cluster administration, including web-based terminal access, namespace management, and resource monitoring. It supports standardized deployment through a template-based engine that allows for reusable configuration schemas and dynamic variable injection. Users can also manage multiple orchestration instances and remote environments through automated update scheduling, rollback mechanisms, and custom metadata tagging. The software is designed for flexible deployment, supporting air-gapped environments and providing programmatic access via secure API tokens.
Gogs is a self-hosted Git service and collaborative code hosting platform. It functions as a version control manager that allows users to store and manage source code on their own infrastructure using SSH, HTTP, and HTTPS protocols. The platform distinguishes itself through comprehensive mirroring capabilities, acting as a tool to synchronize and mirror repositories and wikis from external hosting providers to a local instance. It is designed for secure, containerized deployment, supporting non-root user configurations to meet strict security requirements. Beyond basic hosting, it provides a suite of collaboration tools including pull requests, issue tracking, wikis, and peer code reviews. The system incorporates workflow automation via webhooks and Git hooks, manages oversized binary files through Large File Storage, and offers granular access control for private repository management. The service can be deployed as a container image for consistent behavior across different hosting environments.
Helm is a package manager for Kubernetes that simplifies the deployment and management of multi-component applications. It functions as a template rendering engine and release coordinator, allowing users to bundle, version, and deploy software as standardized packages. By maintaining a persistent metadata layer within the cluster, it tracks release history and manages the full lifecycle of applications, including installations, upgrades, and rollbacks. What distinguishes Helm is its ability to handle complex application hierarchies through automated dependency resolution and the composition of umbrella charts. It provides robust security through cryptographic provenance verification, ensuring package integrity via digital signatures and hashes. Furthermore, it leverages standard container image registries for artifact distribution and utilizes server-side logic to resolve configuration conflicts during concurrent infrastructure updates. The project offers a comprehensive suite of tools for infrastructure management, including lifecycle hooks for custom automation, readiness testing, and advanced deployment strategies. It supports a highly extensible plugin architecture and provides developer utilities such as package inspection and repository management. Users can define reusable configuration logic through a sophisticated templating framework that supports dynamic data injection, flow control, and global value management. Helm is distributed as a command-line interface tool, providing a unified experience for managing containerized environments across development and production workflows.
Weblate is an open-source web-based translation management system that provides a collaborative platform for teams to review, suggest, and approve translations in real time. It functions as a continuous localization platform, automatically synchronizing translations with source code changes in version control repositories, and can be deployed either as a self-hosted server or through a managed cloud hosting service. The system integrates directly with Git hosting platforms like GitHub, GitLab, and Bitbucket, storing all translations in version control with individual translator attribution recorded in commit history. It includes customizable automated quality checks to catch errors and maintain consistency across translated strings, along with terminology management through shared glossaries. The platform supports over 500 languages out of the box and provides a web-based translation editor with peer review tools, keyboard shortcuts, and visual context such as screenshots and descriptions to aid translators. Weblate offers flexible deployment options including Docker, Kubernetes, and OpenShift containers, as well as cloud appliance images for private infrastructure. It provides a REST API for programmatic integration, a command-line client for remote automation, and an add-on plugin architecture for extending the localization workflow. The system includes role-based access control, machine translation integration, translation memory reuse, and background task processing via Celery workers for automated synchronization and scheduled maintenance.
This project is an automated deployment tool designed to streamline the installation, configuration, and maintenance of network proxy software on Linux servers. It functions as a command-line utility that manages the lifecycle of network tunneling services, enabling users to establish and control private traffic routing through repeatable, automated workflows. The tool distinguishes itself through an interactive, menu-driven interface that abstracts complex configuration parameters into selectable options, making it accessible for operators regardless of their technical background. It performs environment-aware path resolution to detect host architecture and distribution specifics, ensuring that binary packages and directory structures are correctly aligned during deployment. Furthermore, it integrates proxy processes directly into the host operating system as managed background daemons, ensuring automatic restarts and consistent boot-time initialization. Beyond initial setup, the project provides comprehensive infrastructure management capabilities, including automated service updates and configuration changes. It utilizes template-driven generation to create service files, ensuring that network traffic routing and security settings are applied consistently across remote server environments.
Sovereign is a self-hosted cloud orchestrator and infrastructure-as-code toolkit designed to establish personal data sovereignty. It provides a suite of automation scripts to deploy a private cloud infrastructure consisting of open-source services for data storage, communication, and web hosting on private hardware. The project focuses on the independent management of digital assets through the deployment of private email servers, git hosting, and file synchronization systems. It distinguishes itself by automating the full stack of server administration, from initial Linux server automation to the orchestration of containerized services. The capability surface covers secure remote access via encrypted VPN tunnels and multi-factor authentication, alongside server security hardening and SSL termination. It also includes system observability through heartbeat-based monitoring and data protection via versioned, encrypted offsite backup pipelines.
Awesome Compose is a collection of resources designed to demonstrate the orchestration of multi-container applications. It serves as a practical reference for using declarative configuration files to define, manage, and deploy complex software stacks, ensuring that services run consistently across development, testing, and production environments. The project highlights the capabilities of container lifecycle management by providing examples of how to bundle software with its dependencies into isolated, portable units. It emphasizes the use of multi-stage build pipelines to optimize image sizes and the integration of environment variables to decouple application logic from host-specific settings. By leveraging these patterns, users can standardize development workspaces and automate the maintenance of interconnected service architectures. Beyond basic orchestration, the repository covers the broader surface of container infrastructure, including the management of image registries, network configurations, and storage drivers. It also demonstrates how to execute build-time commands and embed complex scripts directly into configuration files to streamline the assembly of containerized environments.