133 lines
3.4 KiB
YAML
133 lines
3.4 KiB
YAML
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
name: basket-svc
|
|
namespace: egommerce
|
|
annotations:
|
|
haproxy.org/check: "true"
|
|
labels:
|
|
app: basket-svc
|
|
spec:
|
|
type: NodePort
|
|
selector:
|
|
app: basket-svc
|
|
ports:
|
|
- name: basket-svc
|
|
port: 443
|
|
nodePort: 31830
|
|
# - name: basket-svc-metrics
|
|
# port: 9090
|
|
# nodePort: 31811
|
|
---
|
|
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: basket-svc
|
|
namespace: egommerce
|
|
spec:
|
|
replicas: 1
|
|
strategy:
|
|
type: RollingUpdate
|
|
rollingUpdate:
|
|
maxSurge: 1 # Number of extra pods that can be created during update
|
|
maxUnavailable: 1 # Max number of pods that can be unavailable during update
|
|
selector:
|
|
matchLabels:
|
|
app: basket-svc
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: basket-svc
|
|
spec:
|
|
# initContainers:
|
|
# - name: basket-svc-init
|
|
# image: busybox:1.28
|
|
# command: [
|
|
# 'sh',
|
|
# '-c',
|
|
# '/bin/migrate'
|
|
# ]
|
|
containers:
|
|
- name: basket-svc
|
|
image: git.ego.freeddns.org/egommerce/basket-svc:dev
|
|
imagePullPolicy: Always
|
|
env:
|
|
- name: APP_NAME
|
|
value: basket-svc
|
|
- name: APP_DOMAIN
|
|
value: basket-svc.egommerce.io
|
|
- name: APP_PATH_PREFIX
|
|
value: /basket
|
|
- name: API_DATABASE_URL
|
|
value: postgres://egommerce:12345678@db-postgres:5432/egommerce?sslmode=disable
|
|
readinessProbe:
|
|
httpGet:
|
|
scheme: HTTPS
|
|
port: basket-svc
|
|
path: /health
|
|
initialDelaySeconds: 5
|
|
periodSeconds: 5
|
|
failureThreshold: 1
|
|
livenessProbe:
|
|
httpGet:
|
|
scheme: HTTPS
|
|
port: basket-svc
|
|
path: /health
|
|
initialDelaySeconds: 5
|
|
periodSeconds: 5
|
|
failureThreshold: 1
|
|
volumeMounts:
|
|
- name: basket-cert
|
|
mountPath: /certs/basket-svc.crt
|
|
readOnly: true
|
|
- name: basket-key
|
|
mountPath: /certs/basket-svc.key
|
|
readOnly: true
|
|
- name: basket-migrations
|
|
mountPath: /migrations
|
|
readOnly: true
|
|
resources:
|
|
limits:
|
|
cpu: 100m
|
|
memory: 512M
|
|
requests:
|
|
cpu: 50m
|
|
memory: 256M
|
|
ports:
|
|
- name: basket-svc
|
|
containerPort: 443
|
|
# - name: basket-svc-metrics
|
|
# image: prom/prometheus-exporter:latest
|
|
# ports:
|
|
# - containerPort: 9090
|
|
# args:
|
|
# - --web.listen-address=:9090
|
|
# - --web.telemetry-path=/metrics
|
|
- name: basket-scheduler # Scheduler Container
|
|
image: git.ego.freeddns.org/egommerce/basket-svc:dev
|
|
imagePullPolicy: Always
|
|
command: [
|
|
"/usr/local/bin/scheduler"
|
|
]
|
|
resources:
|
|
limits:
|
|
cpu: 100m
|
|
memory: 512Mi
|
|
requests:
|
|
cpu: 50m
|
|
memory: 256Mi
|
|
imagePullSecrets:
|
|
- name: regcred
|
|
volumes:
|
|
- name: basket-cert
|
|
hostPath:
|
|
path: /egommerce/stack/deploy/certs/basket-svc/basket-svc.crt
|
|
type: File
|
|
- name: basket-key
|
|
hostPath:
|
|
path: /egommerce/stack/deploy/certs/basket-svc/basket-svc.key
|
|
type: File
|
|
- name: basket-migrations
|
|
hostPath:
|
|
path: /egommerce/stack/deploy/db_migrations/basket-svc
|
|
type: Directory |