From c7e4fd678e98db361fcbc94d8274e6823194c138 Mon Sep 17 00:00:00 2001 From: Antun Franjin Date: Wed, 17 Nov 2021 10:08:23 +0100 Subject: [PATCH 1/6] Add baseline deployment --- 01_onsite/01_dev/baseline/deployment.yaml | 235 ++++++++++++++++++++++ 1 file changed, 235 insertions(+) create mode 100644 01_onsite/01_dev/baseline/deployment.yaml diff --git a/01_onsite/01_dev/baseline/deployment.yaml b/01_onsite/01_dev/baseline/deployment.yaml new file mode 100644 index 0000000..5e7370e --- /dev/null +++ b/01_onsite/01_dev/baseline/deployment.yaml @@ -0,0 +1,235 @@ +# Deployment description +apiVersion: apps/v1 +kind: Deployment +metadata: + name: baseline-deployment + namespace: dev-environment + labels: + app: baseline-dev +spec: + strategy: + type: Recreate + replicas: 1 + selector: + matchLabels: + app: baseline-dev + template: + metadata: + labels: + app: baseline-dev + spec: + containers: + - name: baseline-frontend + image: packages.semapp.lan:5000/baseline_frontend:develop + resources: + requests: + memory: "256Mi" + cpu: "100m" + limits: + memory: "512Mi" + cpu: "4" + ports: + - containerPort: 8000 + name: baseline-http + protocol: TCP + volumeMounts: + - mountPath: /etc/nginx/conf.d + readOnly: true + name: baseline-nginx-conf + imagePullPolicy: Always + env: + - name: PORT + value: "8000" + - name: REACT_APP_PROD_API_URL + value: "http://baseline-shop-dev.k3s.semapp.lan/" + - name: REACT_APP_DEV_API_URL + value: "http://baseline-shop-dev.k3s.semapp.lan/" + - name: REACT_APP_VERSION + value: "v1" + - name: REACT_APP_KEYCLOAK_URL + value: "http://keycloack.k3s.semapp.lan/" + - name: REACT_APP_KEYCLOAK_REALM + value: "Baseline" + - name: REACT_APP_KEYCLOAK_CLIENT_ID + value: "baseline-dev" + - name: REACT_APP_TOKEN_MIN_VALIDITY + value: "600" + + - name: baseline-backend + image: packages.semapp.lan:5000/baseline_backend:develop + resources: + requests: + memory: "256Mi" + cpu: "100m" + limits: + memory: "512Mi" + cpu: "4" + ports: + - containerPort: 5000 + name: bl-bck-http + protocol: TCP + imagePullPolicy: Always + envFrom: + - configMapRef: + name: baseline-dev-config-dev + volumes: + - name: baseline-nginx-conf + configMap: + name: baseline-nginx-conf + + +--- +apiVersion: v1 +kind: ConfigMap +metadata: + namespace: dev-environment + name: baseline-dev-config-dev + labels: + app: baseline-dev +data: + DB_CONNECTION: "pgsql" + DB_HOST: "postgres-lb" + DB_PORT: "5432" + DB_DATABASE: "baseline-dev" + DB_USERNAME: "baseline-dev" + DB_PASSWORD: "password" + + APP_NAME: "Baseline" + APP_ENV: "local" + APP_KEY: "base64:14Vg4rilGKEk34XeqNR7ffg6GhFTzA7/z5T1aqy6JHw=" + APP_DEBUG: "false" + APP_URL: "http://baseline-shop-dev.k3s.semapp.lan/" + + LOG_CHANNEL: "stack" + BROADCAST_DRIVER: "log" + CACHE_DRIVER: "file" + QUEUE_CONNECTION: "sync" + SESSION_DRIVER: "cookie" + SESSION_LIFETIME: "120" + + + SANCTUM_STATEFUL_DOMAINS: "baseline-shop-dev.k3s.semapp.lan" + SESSION_DOMAIN: "baseline-shop-dev.k3s.semapp.lan" + + THROTTLE_MAX_ATTEMPTS: "80" + + KEYCLOAK_URL: "http://keycloack.k3s.semapp.lan/" + KEYCLOAK_PORT: "8080" + KEYCLOAK_REALM: "baseline" + + REDIRECT_URL: "http://baseline-shop-dev.k3s.semapp.lan/" + + +#DJANGO_DB_ENGINE: "django.db.backends.postgresql_psycopg2" +#DJANGO_DB_NAME: "efc-dev" +#DJANGO_DB_USER: "efc-dev" +#DJANGO_DB_PASSWORD: "O35iWjsO6RjvQulI2yti" +#DJANGO_DB_HOST: "postgres-lb" +#DJANGO_DB_PORT: "5432" +#ALLOWED_HOSTS: '["*"]' +#FRONTEND_URL: "http://efc-dev.k3s.semapp.lan" +#REACT_APP_PROD_API_URL: "http://efc-dev.k3s.semapp.lan/" +#REACT_APP_DEV_API_URL: http://efc-dev.k3s.semapp.lan/ +#PORT_FRONTEND: '8500' +#SHOP_FRONTEND_URL: "http://efc-shop-dev.k3s.semapp.lan" +#SHOP_PORT_FRONTEND: '8501' + +--- +apiVersion: v1 +kind: ConfigMap +metadata: + namespace: dev-environment + name: baseline-nginx-conf +data: + default.conf: | + upstream backend { + server baseline-backend-dev:5000; + } + + server { + listen 8000; + + access_log /var/log/nginx/access.log; + charset utf-8; + client_max_body_size 1G; + + location / { + root /srv/web; + add_header X-Frame-Options "SAMEORIGIN"; + index index.html index.htm; + try_files $uri $uri /index.html =404; + } + + location ~ ^/api { + proxy_pass http://backend:5000; + proxy_redirect off; + + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + + proxy_read_timeout 300s; + proxy_send_timeout 300s; + send_timeout 300s; + } + + error_page 404 =200 /index.html; + + add_header 'Cache-Control' 'no-store, no-cache, must-revalidate, proxy-revalidate, max-age=0'; + + expires off; + open_file_cache off; + sendfile off; + } + + +--- +# EFC Service +apiVersion: v1 +kind: Service +metadata: + name: baseline-frontend-dev + namespace: dev-environment +spec: + selector: + app: baseline-dev + ports: + - name: baseline-http + port: 8000 + targetPort: baseline-http + type: NodePort + +--- +# EFC backend +apiVersion: v1 +kind: Service +metadata: + name: baseline-backend-dev + namespace: dev-environment +spec: + selector: + app: baseline-dev + ports: + - name: bl-bck-http + port: 5000 + targetPort: bl-bck-http + type: NodePort +--- + +# Ingress description +apiVersion: networking.k8s.io/v1beta1 +kind: Ingress +metadata: + name: baseline-dev-ingress + namespace: dev-environment + annotations: + kubernetes.io/ingress.class: "traefik" +spec: + rules: + - host: baseline-dev.k3s.semapp.lan + http: + paths: + - path: / + backend: + serviceName: baseline-frontend-dev + servicePort: 8000 \ No newline at end of file From 3c8261d2ed533ee0d445e2eef2d522bbbde7c60a Mon Sep 17 00:00:00 2001 From: Antun Franjin Date: Thu, 11 Nov 2021 10:59:26 +0100 Subject: [PATCH 2/6] Fix some typos. --- 01_onsite/01_dev/baseline/deployment.yaml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/01_onsite/01_dev/baseline/deployment.yaml b/01_onsite/01_dev/baseline/deployment.yaml index 5e7370e..6fe74bd 100644 --- a/01_onsite/01_dev/baseline/deployment.yaml +++ b/01_onsite/01_dev/baseline/deployment.yaml @@ -41,9 +41,9 @@ spec: - name: PORT value: "8000" - name: REACT_APP_PROD_API_URL - value: "http://baseline-shop-dev.k3s.semapp.lan/" + value: "http://baseline-dev.k3s.semapp.lan/" - name: REACT_APP_DEV_API_URL - value: "http://baseline-shop-dev.k3s.semapp.lan/" + value: "http://baseline-dev.k3s.semapp.lan/" - name: REACT_APP_VERSION value: "v1" - name: REACT_APP_KEYCLOAK_URL @@ -98,7 +98,7 @@ data: APP_ENV: "local" APP_KEY: "base64:14Vg4rilGKEk34XeqNR7ffg6GhFTzA7/z5T1aqy6JHw=" APP_DEBUG: "false" - APP_URL: "http://baseline-shop-dev.k3s.semapp.lan/" + APP_URL: "http://baseline-dev.k3s.semapp.lan/" LOG_CHANNEL: "stack" BROADCAST_DRIVER: "log" @@ -108,8 +108,8 @@ data: SESSION_LIFETIME: "120" - SANCTUM_STATEFUL_DOMAINS: "baseline-shop-dev.k3s.semapp.lan" - SESSION_DOMAIN: "baseline-shop-dev.k3s.semapp.lan" + SANCTUM_STATEFUL_DOMAINS: "baseline-dev.k3s.semapp.lan" + SESSION_DOMAIN: "baseline-dev.k3s.semapp.lan" THROTTLE_MAX_ATTEMPTS: "80" @@ -117,7 +117,7 @@ data: KEYCLOAK_PORT: "8080" KEYCLOAK_REALM: "baseline" - REDIRECT_URL: "http://baseline-shop-dev.k3s.semapp.lan/" + REDIRECT_URL: "http://baseline-dev.k3s.semapp.lan/" #DJANGO_DB_ENGINE: "django.db.backends.postgresql_psycopg2" From 82232d777a87b1f3e682ed3a9aec335d80088c22 Mon Sep 17 00:00:00 2001 From: Antun Franjin Date: Wed, 17 Nov 2021 13:31:23 +0100 Subject: [PATCH 3/6] Add some stuff. --- 01_onsite/01_dev/baseline/deployment.yaml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/01_onsite/01_dev/baseline/deployment.yaml b/01_onsite/01_dev/baseline/deployment.yaml index 6fe74bd..0762504 100644 --- a/01_onsite/01_dev/baseline/deployment.yaml +++ b/01_onsite/01_dev/baseline/deployment.yaml @@ -69,6 +69,10 @@ spec: name: bl-bck-http protocol: TCP imagePullPolicy: Always + volumeMounts: + - mountPath: ./www + readOnly: true + name: www envFrom: - configMapRef: name: baseline-dev-config-dev @@ -76,6 +80,8 @@ spec: - name: baseline-nginx-conf configMap: name: baseline-nginx-conf + - name: www + #emptyDir: {} --- From ce8abaf081a5bc86cad1280b0ccc1b89daa0fc91 Mon Sep 17 00:00:00 2001 From: Antun Franjin Date: Mon, 22 Nov 2021 21:17:36 +0100 Subject: [PATCH 4/6] Some changes. --- 01_onsite/01_dev/baseline/deployment.yaml | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/01_onsite/01_dev/baseline/deployment.yaml b/01_onsite/01_dev/baseline/deployment.yaml index 0762504..40a29f5 100644 --- a/01_onsite/01_dev/baseline/deployment.yaml +++ b/01_onsite/01_dev/baseline/deployment.yaml @@ -69,10 +69,6 @@ spec: name: bl-bck-http protocol: TCP imagePullPolicy: Always - volumeMounts: - - mountPath: ./www - readOnly: true - name: www envFrom: - configMapRef: name: baseline-dev-config-dev @@ -80,8 +76,7 @@ spec: - name: baseline-nginx-conf configMap: name: baseline-nginx-conf - - name: www - #emptyDir: {} + --- @@ -101,7 +96,7 @@ data: DB_PASSWORD: "password" APP_NAME: "Baseline" - APP_ENV: "local" + APP_ENV: "production" APP_KEY: "base64:14Vg4rilGKEk34XeqNR7ffg6GhFTzA7/z5T1aqy6JHw=" APP_DEBUG: "false" APP_URL: "http://baseline-dev.k3s.semapp.lan/" From 6532b18c98a6ecb1b6c179e5e027b5a2926af607 Mon Sep 17 00:00:00 2001 From: Antun Franjin Date: Fri, 26 Nov 2021 13:31:10 +0100 Subject: [PATCH 5/6] Update dev basline deployment file. --- 01_onsite/01_dev/baseline/deployment.yaml | 42 ++++++++--------------- 1 file changed, 14 insertions(+), 28 deletions(-) diff --git a/01_onsite/01_dev/baseline/deployment.yaml b/01_onsite/01_dev/baseline/deployment.yaml index 40a29f5..8af0e76 100644 --- a/01_onsite/01_dev/baseline/deployment.yaml +++ b/01_onsite/01_dev/baseline/deployment.yaml @@ -41,22 +41,23 @@ spec: - name: PORT value: "8000" - name: REACT_APP_PROD_API_URL - value: "http://baseline-dev.k3s.semapp.lan/" + value: "http://baseline-dev.k3s.semapp.lan/api/" - name: REACT_APP_DEV_API_URL - value: "http://baseline-dev.k3s.semapp.lan/" + value: "http://baseline-dev.k3s.semapp.lan/api/" - name: REACT_APP_VERSION value: "v1" - name: REACT_APP_KEYCLOAK_URL - value: "http://keycloack.k3s.semapp.lan/" + value: "http://keycloak.semapp.lan/auth/" - name: REACT_APP_KEYCLOAK_REALM - value: "Baseline" + value: "baseline" - name: REACT_APP_KEYCLOAK_CLIENT_ID - value: "baseline-dev" + value: "baseline" - name: REACT_APP_TOKEN_MIN_VALIDITY value: "600" - name: baseline-backend image: packages.semapp.lan:5000/baseline_backend:develop + workingDir: /opt/www resources: requests: memory: "256Mi" @@ -71,7 +72,7 @@ spec: imagePullPolicy: Always envFrom: - configMapRef: - name: baseline-dev-config-dev + name: baseline-dev-config volumes: - name: baseline-nginx-conf configMap: @@ -84,7 +85,7 @@ apiVersion: v1 kind: ConfigMap metadata: namespace: dev-environment - name: baseline-dev-config-dev + name: baseline-dev-config labels: app: baseline-dev data: @@ -96,9 +97,9 @@ data: DB_PASSWORD: "password" APP_NAME: "Baseline" - APP_ENV: "production" + APP_ENV: "development" APP_KEY: "base64:14Vg4rilGKEk34XeqNR7ffg6GhFTzA7/z5T1aqy6JHw=" - APP_DEBUG: "false" + APP_DEBUG: "true" APP_URL: "http://baseline-dev.k3s.semapp.lan/" LOG_CHANNEL: "stack" @@ -114,27 +115,12 @@ data: THROTTLE_MAX_ATTEMPTS: "80" - KEYCLOAK_URL: "http://keycloack.k3s.semapp.lan/" - KEYCLOAK_PORT: "8080" - KEYCLOAK_REALM: "baseline" + KEYCLOAK_URL: "http://keycloak.semapp.lan" + KEYCLOAK_PORT: "80" + KEYCLOAK_REALM: "baseline" REDIRECT_URL: "http://baseline-dev.k3s.semapp.lan/" - -#DJANGO_DB_ENGINE: "django.db.backends.postgresql_psycopg2" -#DJANGO_DB_NAME: "efc-dev" -#DJANGO_DB_USER: "efc-dev" -#DJANGO_DB_PASSWORD: "O35iWjsO6RjvQulI2yti" -#DJANGO_DB_HOST: "postgres-lb" -#DJANGO_DB_PORT: "5432" -#ALLOWED_HOSTS: '["*"]' -#FRONTEND_URL: "http://efc-dev.k3s.semapp.lan" -#REACT_APP_PROD_API_URL: "http://efc-dev.k3s.semapp.lan/" -#REACT_APP_DEV_API_URL: http://efc-dev.k3s.semapp.lan/ -#PORT_FRONTEND: '8500' -#SHOP_FRONTEND_URL: "http://efc-shop-dev.k3s.semapp.lan" -#SHOP_PORT_FRONTEND: '8501' - --- apiVersion: v1 kind: ConfigMap @@ -162,7 +148,7 @@ data: } location ~ ^/api { - proxy_pass http://backend:5000; + proxy_pass http://backend; proxy_redirect off; proxy_set_header Host $host; From 68a63a474d89941a91bbdf87a6099d3008b6822e Mon Sep 17 00:00:00 2001 From: Antun Franjin Date: Mon, 29 Nov 2021 10:57:40 +0100 Subject: [PATCH 6/6] Change names of cofigMaps for backend and frontend. --- 01_onsite/01_dev/baseline/deployment.yaml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/01_onsite/01_dev/baseline/deployment.yaml b/01_onsite/01_dev/baseline/deployment.yaml index 8af0e76..4c0d2e0 100644 --- a/01_onsite/01_dev/baseline/deployment.yaml +++ b/01_onsite/01_dev/baseline/deployment.yaml @@ -35,7 +35,7 @@ spec: volumeMounts: - mountPath: /etc/nginx/conf.d readOnly: true - name: baseline-nginx-conf + name: baseline-dev-frontend-conf imagePullPolicy: Always env: - name: PORT @@ -72,11 +72,11 @@ spec: imagePullPolicy: Always envFrom: - configMapRef: - name: baseline-dev-config + name: baseline-dev-backend-conf volumes: - - name: baseline-nginx-conf + - name: baseline-dev-frontend-conf configMap: - name: baseline-nginx-conf + name: baseline-dev-frontend-conf @@ -85,7 +85,7 @@ apiVersion: v1 kind: ConfigMap metadata: namespace: dev-environment - name: baseline-dev-config + name: baseline-dev-backend-conf labels: app: baseline-dev data: @@ -126,7 +126,7 @@ apiVersion: v1 kind: ConfigMap metadata: namespace: dev-environment - name: baseline-nginx-conf + name: baseline-dev-frontend-conf data: default.conf: | upstream backend {