/devops-kompose

DevOps tools on Kubernetes with Helm charts

Primary LanguageSmartyApache License 2.0Apache-2.0

DevOps tools on Kubernetes

This is a set of the following charts in the Helmfile:

Component Chart
JIRA Software ./atlassian-jira-software
Confluence ./atlassian-confluence
Mattermost ./mattermost
GitLab ./gitlab
HackMD stable/hackmd
Nextcloud ./nextcloud
SonarQube stable/sonarqube
Nexus stable/sonatype-nexus
Keycloak stable/keycloak
JIRA to Mattermost Integration ./jira-to-slack

Build a stack

Make sure you have the followings:

  • A Kubernetes cluster
  • A wildcard domain (e.g. *.devops.example.com) pointing to the cluster nodes
  • A PostgreSQL database (e.g. RDS)

Install the following tools:

Configure

Create .env with your environment values. Note that .env is added to .gitignore by default but you can remove it.

export DEVOPS_DOMAIN="devops.example.com"
export DEVOPS_POSTGRES_HOST="xxx.xxx.us-west-2.rds.amazonaws.com"

Load the environment values.

source .env

Create databases

See create-databases/README.md.

Bootstrap

Install the Helm charts.

helmfile sync

Setup Keycloak

Create a new realm:

  1. Open https://keycloak.example.com.
  2. Create a new realm devops.
  3. Create your user and set your initial password.
  4. Create a new group admin and add you into the group.
  5. Create a new role admin and assign all roles of the realm-management role.
  6. Open https://keycloak.example.com/auth/admin/devops/console/.
  7. Change your password.

Setup JIRA Software

Setup your JIRA Software:

  1. Open https://jira.example.com.
  2. Configure the database.
  3. Install a SAML or OIDC plugin, e.g.:
  4. Configure SAML or OIDC.

Setup Confluence

Setup your Confluence:

  1. Open https://confluence.example.com.
  2. Configure the database.

Setup Mattermost

Setup your Confluence:

  1. Open https://mattermost.example.com.
  2. Create a first user and channel.

Contribution

This is an open source software licensed under Apache-2.0. Feel free to open issues or pull requests.