containerpilot - A service for autodiscovery and configuration of applications running in containers

  •        6

An init system for cloud-native distributed applications that automates the process of service discovery, configuration, and lifecycle management inside the container, so you can focus on your apps.We can write our new applications to do that, but existing apps will need some help. We can wrap each application in a shell script that registers itself with the discovery service easily enough, but watching for changes to that service and ensuring that health checks are being made is more complicated. We can put a second process in the container, but as soon as we do that we need an init system running inside the container as well.

https://github.com/joyent/containerpilot

Tags
Implementation
License
Platform

   




Related Projects

triton - Joyent Triton DataCenter: a cloud management platform with first class support for containers


Triton DataCenter (just "Triton" for short, formerly "SmartDataCenter" and "SDC") is an open-source cloud management platform that delivers next generation, container-based, service-oriented infrastructure across one or more data centers. With an emphasis on ease of installation and operation, Triton is proven at scale: Triton powers the Triton Cloud and private data centers (Triton Enterprise worldwide.This repository provides documentation for the overall Triton project and pointers to the other repositories that make up a complete Triton deployment. See the repository list.

Registrator - Service registry bridge for Docker with pluggable adapters


Service registry bridge for Docker. Registrator automatically registers and deregisters services for any Docker container by inspecting containers as they come online. Registrator supports pluggable service registries, which currently includes Consul, etcd and SkyDNS 2.

node-workflow - Task orchestration, creation and running using NodeJS


This repository is part of the Joyent Triton project. See the contribution guidelines -- Triton does not use GitHub PRs -- and general documentation at the main Triton project page.If you are building a completely new system composed of many discrete API applications, each of them with a clearly defined area of responsibility, or if you are trying to assemble a collaboration channel between a heterogeneous set of unrelated API applications, you need a means to orchestrate interactions between these applications.

skydock - Service discovery via DNS for docker


Docker supports DNS based service discovery now. You should use the Docker implementation instead of this project. Skydock was built at a time when Docker did not support DNS discovery or auto registration. I'll keep the repo up for past years and as reference for others but don't use it if you have a recent version of Docker.Skydock monitors docker events when containers start, stop, die, kill, etc and inserts records into a dynamic DNS server skydns. This allows standard DNS queries for services running inside docker containers. Because lets face it, if you have to modify your application code to work with other service discovery solutions you might as well just give up. DNS just works and it works well. Also you cannot be expected to modify application code that you don't own. Passing service urls via the cli or in static config files (nginx) will not be possible if your service discovery solution requires a client library just to fetch an IP.

docker-alpine - Docker containers running Alpine Linux and s6 for process management


Highly configurable Docker images running Alpine linux and s6 process management. Using Docker makes your infrastructure and environment consistent, testable, scalable and repeatable.



PiCluster - Manage Docker Containers


PiCluster is a simple way to manage Docker containers on multiple hosts. Docker Swarm not that good and Kubernetes was too difficult to install currently on ARM. PiCluster will only build and run images from Dockerfile's on the host specified in the config file. This software will work on regular x86 hardware also and is not tied to ARM.

rexray - REX-Ray is a container storage orchestration engine enabling persistence for cloud native workloads


REX-Ray provides a vendor agnostic storage orchestration engine. The primary design goal is to provide persistent storage for Docker, Kubernetes, and Mesos.It is additionally available as a Go package, CLI tool, and Linux service which enables it to be used for additional use cases.

Packer - Build Automated Machine Images


Packer is a tool for building identical machine images for multiple platforms from a single source configuration. It is lightweight, runs on every major operating system, and is highly performant, creating machine images for multiple platforms in parallel.

Helios - Docker container orchestration platform


Helios is a Docker orchestration platform for deploying and managing containers across an entire fleet of servers. Helios provides a HTTP API as well as a command-line client to interact with servers running your containers. It also keeps a history of events in your cluster including information such as deploys, restarts and version changes.

Consul - Tool for Service Discovery, Monitoring and Configuration


Consul is a tool for service discovery and configuration. Consul is distributed, highly available, and extremely scalable. Consul makes it simple for services to register themselves and to discover other services via a DNS or HTTP interface. Register external services such as SaaS providers as well. It prevents routing requests to unhealthy hosts and enables services to easily provide circuit breakers.

connectable - Magic proxy for internal services


A smart Docker proxy that lets your containers connect to other containers via service discovery without being service discovery aware.You can get the Connectable micro container from the Docker Hub.

Kong - The Microservice API Gateway


Kong is a cloud-native, fast, scalable, and distributed Microservice Abstraction Layer (also known as an API Gateway, API Middleware or in some cases Service Mesh). Backed by the battle-tested NGINX with a focus on high performance, Kong was made available as an open-source platform in 2015. Under active development, Kong is used in production at thousands of organizations from startups, Global 5000 and Government organizations.

light-4j - A fast, lightweight and more productive microservices framework


Light 4j is a fast, lightweight and cloud native microservices framework. Light means lightweight, lighting fast and shed light on how to program with modern Java SE. It is 44 times faster than the most popular microservices platform Spring Boot embedded Tomcat and use only 1/5 of memory.

acs-engine - Azure Container Service Engine - a place for community to collaborate and build the best open Docker container infrastructure for Azure


The Azure Container Service Engine (acs-engine) generates ARM (Azure Resource Manager) templates for Docker enabled clusters on Microsoft Azure with your choice of DC/OS, Kubernetes, Swarm Mode, or Swarm orchestrators. The input to the tool is a cluster definition. The cluster definition is very similar to (in many cases the same as) the ARM template syntax used to deploy a Microsoft Azure Container Service cluster.Execute make ci to run the checkin validation tests.

Anchore Engine - Centralized service for inspection, analysis and certification of container images


The Anchore Engine is an open source project that provides a centralized service for inspection, analysis and certification of container images. The Anchore engine is provided as a Docker container image that can be run standalone or on an orchestration platform such as Kubernetes, Docker Swarm, Rancher or Amazon ECS. The Anchore engine can be accessed directly through a RESTful API or via the Anchore CLI.

Kubernetes - Container Cluster Manager


Kubernetes is an open source orchestration system for Docker containers. It handles scheduling onto nodes in a compute cluster and actively manages workloads to ensure that their state matches the users declared intentions. Using the concepts of "labels" and "pods", it groups the containers which make up an application into logical units for easy management and discovery.

crane - Crane - Lift containers with ease


Crane is a Docker orchestration tool similar to Docker Compose with extra features and (arguably) smarter behaviour. It works by reading in some configuration (JSON or YAML) which describes how to run containers. Crane is ideally suited for development environments or continuous integration. Please see www.craneup.tech.

Swarm - Docker native clustering system


Docker Swarm is native clustering for Docker. It turns a pool of Docker hosts into a single, virtual host. It is Docker's first container orchestration project that began in 2014. Combined with Docker Compose, it's a very convenient tool to schedule containers.

serf - Service orchestration and management tool


Serf is a decentralized solution for service discovery and orchestration that is lightweight, highly available, and fault tolerant.Serf runs on Linux, Mac OS X, and Windows. An efficient and lightweight gossip protocol is used to communicate with other nodes. Serf can detect node failures and notify the rest of the cluster. An event system is built on top of Serf, letting you use Serf's gossip protocol to propagate events such as deploys, configuration changes, etc. Serf is completely masterless with no single point of failure.

consul-alerts - A simple daemon to send notifications based on Consul health checks


1. Consul 0.4+. Get it [here](http://consul.io).2. Configured `GOPATH`.Releases--------Stable release are [here](https://github.com/AcalephStorage/consul-alerts/releases).Latest release are found here: - [darwin-amd64](https://bintray.com/artifact/download/darkcrux/generic/consul-alerts-latest-darwin-amd64.tar) - [linux-386](https://bintray.com/artifact/download/darkcrux/generic/consul-alerts-latest-linux-386.tar) - [linux-amd64](https://bintray.com/artifact/download/darkcrux/generic/consul-aler