101 lines
2.1 KiB
YAML
101 lines
2.1 KiB
YAML
apiVersion: apps/v1
|
|
kind: StatefulSet
|
|
metadata:
|
|
name: atlantis
|
|
namespace: nearle
|
|
labels:
|
|
app: atlantis
|
|
spec:
|
|
serviceName: "atlantis"
|
|
replicas: 2
|
|
selector:
|
|
matchLabels:
|
|
app: atlantis
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: atlantis
|
|
spec:
|
|
tolerations:
|
|
- key: dedicated
|
|
operator: Equal
|
|
value: apps
|
|
effect: NoSchedule
|
|
affinity:
|
|
nodeAffinity:
|
|
requiredDuringSchedulingIgnoredDuringExecution:
|
|
nodeSelectorTerms:
|
|
- matchExpressions:
|
|
- key: node-role.workolik/app
|
|
operator: In
|
|
values:
|
|
- "true"
|
|
podAntiAffinity:
|
|
preferredDuringSchedulingIgnoredDuringExecution:
|
|
- weight: 100
|
|
podAffinityTerm:
|
|
labelSelector:
|
|
matchLabels:
|
|
app: atlantis
|
|
topologyKey: kubernetes.io/hostname
|
|
topologySpreadConstraints:
|
|
- maxSkew: 1
|
|
topologyKey: kubernetes.io/hostname
|
|
whenUnsatisfiable: ScheduleAnyway
|
|
labelSelector:
|
|
matchLabels:
|
|
app: atlantis
|
|
containers:
|
|
- name: backend
|
|
image: nearlecommerce/atlantis:v0.0.41
|
|
imagePullPolicy: Always
|
|
ports:
|
|
- containerPort: 3000
|
|
env:
|
|
- name: PORT
|
|
value: "3000"
|
|
envFrom:
|
|
- configMapRef:
|
|
name: nearle-config
|
|
- secretRef:
|
|
name: app-secrets
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
name: atlantis
|
|
namespace: nearle
|
|
labels:
|
|
app: atlantis
|
|
spec:
|
|
type: NodePort
|
|
ports:
|
|
- port: 80
|
|
targetPort: 3000
|
|
nodePort: 30825
|
|
protocol: TCP
|
|
selector:
|
|
app: atlantis
|
|
---
|
|
apiVersion: gateway.networking.k8s.io/v1
|
|
kind: HTTPRoute
|
|
metadata:
|
|
name: atlantis-route
|
|
namespace: nearle
|
|
labels:
|
|
app: atlantis
|
|
spec:
|
|
parentRefs:
|
|
- name: gateway
|
|
namespace: alaska
|
|
hostnames:
|
|
- "atlantis.nearle.app"
|
|
rules:
|
|
- matches:
|
|
- path:
|
|
type: PathPrefix
|
|
value: /
|
|
backendRefs:
|
|
- name: atlantis
|
|
port: 80
|