Browse Source

Add new basileine server deployment.

This deployment will be used for lan instances of the baseline until we
provade batter solution for variables of the keyclak configuration to
react frontend.
feat/add-semcust-prod
Antun Franjin 4 years ago
parent
commit
be504077e3
  1. 218
      01_onsite/01_dev/baseline-server/deployment.yaml

218
01_onsite/01_dev/baseline-server/deployment.yaml

@ -0,0 +1,218 @@
# Deployment description
apiVersion: apps/v1
kind: Deployment
metadata:
name: baseline-server-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
workingDir: /srv/web
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-dev-frontend-conf
imagePullPolicy: Always
env:
- name: KEYCLOAK_REALM
value: "baseline_server_dev"
- name: KEYCLOAK_CLIENT
value: "baseline"
- name: KEYCLOAK_TOKEN_VALIDITY
value: "600"
- name: KEYCLOAK_URL
value: "http://keycloak.semapp.lan/auth/"
- name: baseline-backend
image: packages.semapp.lan:5000/baseline_backend:develop
workingDir: /opt/www
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-backend-conf
volumes:
- name: baseline-dev-frontend-conf
configMap:
name: baseline-dev-frontend-conf
---
apiVersion: v1
kind: ConfigMap
metadata:
namespace: dev-environment
name: baseline-dev-backend-conf
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: "development"
APP_KEY: "base64:14Vg4rilGKEk34XeqNR7ffg6GhFTzA7/z5T1aqy6JHw="
APP_DEBUG: "true"
APP_URL: "http://baseline-server-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-server-dev.k3s.semapp.lan"
SESSION_DOMAIN: "baseline-server-dev.k3s.semapp.lan"
THROTTLE_MAX_ATTEMPTS: "80"
KEYCLOAK_URL: "http://keycloak.semapp.lan"
KEYCLOAK_PORT: "80"
KEYCLOAK_REALM: "baseline_develop"
REDIRECT_URL: "http://baseline-server-dev.k3s.semapp.lan/"
---
apiVersion: v1
kind: ConfigMap
metadata:
namespace: dev-environment
name: baseline-dev-frontend-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;
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/v1
kind: Ingress
metadata:
name: baseline-dev-ingress
namespace: dev-environment
annotations:
kubernetes.io/ingress.class: "traefik"
spec:
rules:
- host: baseline-server-dev.k3s.semapp.lan
http:
paths:
- backend:
service:
name: baseline-frontend-dev
port:
number: 8000
path: /
pathType: ImplementationSpecific
Loading…
Cancel
Save