Web UI for Kubernetes with teamwork and CI/CD support
Containerum is a Web UI for Kubernetes. Containerum includes tools for simple CI/CD pipelines setup and team management. Release notes are available here.
Containerum UI consists of several components:
and 2 databases:
Basically, Containerum architecture looks like this:
Before installing Containerum make sure you have the following components:
To launch Containerum on your Kubernetes Cluster without metrics collection run:
helm repo add containerum https://charts.containerum.io
helm repo update
helm install containerum/containerum
To enable collecting resource utilization metrics, install Containerum with Prometheus:
helm repo add containerum https://charts.containerum.io
helm repo update
helm install containerum/containerum —-set tags.monitoring=true
If you already have Prometheus in your cluster and want to use it to display node utilization in Containerum Web UI, install Containerum with the parameters below. Containerum is compatible with Prometheus 6.7.4
from the official Helm repository.
helm repo add containerum https://charts.containerum.io
helm repo update
helm install containerum/containerum —-set nodemetrics.env.local.PROMETHEUS_ADDR=http://{PROMETHEUS_SVC_NAME}:{PROMETHEUS_SVC_PORT}
This will install Containerum and create two Ingresses to expose it. You can view the Ingresses with kubectl get ingress
.
Note 1: Containerum allows importing existing resources (deployments, services, etc.). To specify, which namespaces SHOULD NOT be imported, set the following tag during installation and list the namespaces after
CH_KUBE_IMPORTER_EXCLUDED_NS=
.
--set kube-importer.env.global.CH_KUBE_IMPORTER_EXCLUDED_NS="default,kube-system"
Note 2: To create deployments in Containerum you need to have an application node. In case you use only one node, make sure it is labeled as
slave
. To add the label, run:
kubectl label node ubuntu-01 role=slave
where ubuntu-01
is the name of your node.
To be able to reach Containerum Web UI and the API, add the machine IP address to /etc/hosts, e.g.:
127.0.0.1 local.containerum.io api.local.containerum.io
where 127.0.0.1
is the address of your machine with Containerum.
Now you can access Containerum Web UI at local.containerum.io
.
Default username: [email protected]
Password: verystrongpassword
Containerum has an intuitive interface. Yet we recommend starting with learning the object types in Containerum as well as the instructions on configuring Containerum in our Docs.
Don't forget to install chkit CLI (from source code or binaries - whatever you prefer!).
To keep track of roadmap implementation, please refer to Containerum Projects page.
Add events collection and notifications
Add custom Dashboards
Add integration with Jira
Add integration with GitLab
Add reporting tools
Add project visualization
Create scripts to setup CI/CD Pipelines for
Add node utilisation charts to the Dashboard
Add Solutions and Marketplace
Add integration with Helm
Implement ‘Project’ entity
Create Stage environments
Implement revision control for stage environments
Implement revision control for Projects
Add admin control features
We welcome any help from the open source community. To submit your contributions, fork the project you want to contribute to (e.g. permissions, auth, etc.), commit changes and create a pull request to the develop branch. We will review the changes and include them to the project. Read more about contributing in this document.
Please submit any comments and report Containerum project bugs or issues in this repository. In case you have questions about Containerum, there are several ways you can contact our team: by filling out the form on our website or by sending us an email at [email protected].
You can find the Documentation in the Docs section on our website or in the Docs repository here on GutHub. Please, feel free to contribute to the Docs to help us make them more accurate and comprehensive.
Copyright (c) 2015-2019 Containerum.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
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.