Django Operator for Kubernetes
選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。
 
 
 
 
Vladimir Smagin 06d5f8b2a4 go mod 7ヶ月前
build simple run 11ヶ月前
cmd/manager simple run 11ヶ月前
deploy bump version 7ヶ月前
pkg add labeling 7ヶ月前
vendor no more latest tag, use vendor, add jenkins pipeline 7ヶ月前
version bump version 7ヶ月前
.gitignore simple run 11ヶ月前
Dockerfile no more latest tag, use vendor, add jenkins pipeline 7ヶ月前
Jenkinsfile no more latest tag, use vendor, add jenkins pipeline 7ヶ月前
README.md readme 11ヶ月前
VERSION fix helm chart 7ヶ月前
go.mod go mod 7ヶ月前
go.sum no more latest tag, use vendor, add jenkins pipeline 7ヶ月前
tools.go simple run 11ヶ月前

README.md

Django operator for Kubernetes

Can run simple projects with collectstatic and migrations at init stage. In some cases you can run non-django images like hello-world below, just set Django specific flags to False and statics path to /notexists.

Build sources

Prebuilt images

You can find images here https://hub.docker.com/r/iam21h/django-operator

Deploy operator

kubectl -f deploy/service_account.yaml
kubectl -f deploy/role.yaml
kubectl -f deploy/role_binding.yaml
kubectl -f deploy/operator.yaml

Your first Django deployment

This resource can help you run your first image

apiVersion: blindage.org/v1alpha1
kind: Django
metadata:
  name: django-test
spec:
  pullPolicy: IfNotPresent
  image: gcr.io/hello-minikube-zero-install/hello-node:latest
  replicas: 1

  # application port, default 8080
  appPort: 8080

  # path where you store static files, typicaly inside application home
  appStaticPath: "/app/static"

  # run migrations in init container before run
  runMigrate: False

  # run collectstatic in init container before run
  runCollectStatic: False

Full Spec

image specific settings

  • PullPolicy: its usual imagePullPolicy, default IfNotPresent
  • Image: string, required, format <image>:<tag>
  • Replicas: integer, default 1

manage resources

Read more about resources limiting here https://kubernetes.io/docs/concepts/policy/resource-quotas/

  • PodRequests: default is empty
  • PodLimits: default is empty

Affinity and antiaffinity manual https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity

  • Affinity: default is empty

set annotations to service and pod

  • ServiceAnnotations: <key>: <value> dict, default is empty
  • PodAnnotations: <key>: <value> dict, default is empty

application specific configuration

  • AppPort: integer, internal application port, default 8000
  • AppEnv: EnvVar array, default is empty
  • AppStaticPath: string, path to static files, default /app/static
  • RunMigrate: bool, run migrations at init stage, default False
  • RunCollectStatic: bool, run collectstatic at init stage, default False

Copyright by Vladimir Smagin (21h) 2019
http://blindage.org email: 21h@blindage.org
Project page: https://git.blindage.org/21h/django-operator