Sign inSign up

mblaschke/k8s-devops-console

By mblaschke

Updated over 8 years ago

[WIP] Kubernetes DevOps Console (WebUI for teams for managing namespaces and creating kubeconf)

Image
0

1.4K

mblaschke/k8s-devops-console repository overview

K8s DevOps console

K8s DevOps console

Build (docker)

docker build -t webdevops/k8s-devops-console .
docker run --rm -p 9000:9000 -e KUBECONFIG=/root/.kube/config -v /path/to/your/kubeconfig:/root/.kube/config webdevops/k8s-devops-console

Environment settings

Env varRequiredTypeDescription
APP_SECRETnostringApplication secret for encryption (should be set, default is random)
K8S_CONFIGnostringFilename of app.yaml file
KUBECONFIGnostringPath to custom kubeconf (if not in-cluster)
OAUTH_PROVIDERyesstringOAuth provider name (github or azuread)
OAUTH_CLIENT_IDyesstringOAuth client id
OAUTH_CLIENT_SECRETyesstringOAuth client secret
OAUTH_ENDPOINT_AUTHnostringOAuth endpoint for auth
OAUTH_ENDPOINT_TOKENnostringOAuth endpoint for token exchange
OAUTH_AZUREAD_TENANTyes (azuread)stringOAuth AzureAD tenant id (only provider "azuread")
K8S_CLUSTER_CAnostringKubernetes cluster CA (as base64 string) for kubeconfig generation
K8S_CLUSTER_APISERVERnostringKubernetes cluster apiserver url for kubeconfig generation
K8S_OAUTH_SERVERAPPnostringKubernetes cluster OAuth server app ID for kubeconfig generation
K8S_OAUTH_CLIENTAPPnostringKubernetes cluster OAuth client app ID for kubeconfig generation
K8S_OAUTH_TENANTnostringKubernetes cluster tenant ID for kubeconfig generation

see app.conf for more environment settings and defaults

OAuth

Supported providers:

TODO

  • setup k8s permissions on login
  • setup user role on namespace creation
  • create user key (store in remote storage?)
  • cron user cleanup
  • send notifcations

Tag summary

Content type

Image

Digest

Size

12.3 MB

Last updated

over 8 years ago

docker pull mblaschke/k8s-devops-console