Haven is a Docker cluster management system. The user controls the entire platform via user-friendly yet powerful UI and commandline tools. Built on top of Docker, Swarm, and Compose, it offers multiple clusters and image registries management.
License (Apache Version 2.0)
Copyright 2017 Code Above Lab Inc
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
For additional technical detail, see:
Haven features the following capabilities:
- Dashboard
- Cluster Management
- Container Management
- Node Status
- Image Management
- Registry Management
- Jobs
- Delegated Admin
- Subset of additional features
The dashboard gives an overview of the status of the cluster and any containers or nodes that are using excessive resources.
In the Cluster module, the user can manage the nodes and the containers, and view any errors the in the cluster event log.
In the Containers module, the user can manage all of the active containers and their status. The user can also view logs, moreover, configurations of each container.
In the Node module, the user can see all nodes in the system and their detailed info.
In the Image Management module, the user can see all of the images downloaded onto each cluster and which nodes the image resides on. Users can remove old images to save disk space.
Private and public Registries can be configured on the system to let the user easily select the desired image for downloading without having to remember which registry it is on.
Unattended jobs can be scheduled and results are available for auditing purposes. Each cluster can have its set of jobs to update specific images.
Users can be assigned administrative rights to specific clusters to avoid admin bottleneck.
-
Creating/deleting tags and ability to set filters for clusters based on the tags. Use case would be creating workflow: only images which were tested at QA should be visible on the prod cluster.
-
Storing containers configuration in VCS per cluster, see https://github.com/codeabovelab/haven-example-container-configuration
-
Additional policies/constraints for Swarm.
-
Group operations such as cleaning space, upgrade/rollback containers. For example, use cases are:
a. checking/updating all containers from specified repository every five minutes for test cluster b. one-time update specified list of containers (which use common API, etc). c. or just click update all in this cluster
-
Backups of system configuration