0
0
mirror of https://github.com/alex289/CleanArchitecture.git synced 2025-06-30 02:31:08 +00:00
CleanArchitecture/k8s-deployment.yml
2023-09-02 19:17:19 +02:00

171 lines
3.2 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: clean-architecture-deployment
spec:
replicas: 1
selector:
matchLabels:
app: clean-architecture-app
template:
metadata:
labels:
app: clean-architecture-app
spec:
containers:
- name: clean-architecture-app
# Replace this with the path to your built image
image: alexdev28/clean-architecture:latest
ports:
- containerPort: 80
---
apiVersion: v1
kind: Service
metadata:
name: clean-architecture
spec:
selector:
app: clean-architecture-app
ports:
- protocol: TCP
port: 80
targetPort: 80
type: LoadBalancer
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: sql-server-deployment
spec:
replicas: 1
selector:
matchLabels:
app: sql-server
template:
metadata:
labels:
app: sql-server
spec:
containers:
- name: sql-server
image: mcr.microsoft.com/mssql/server:latest
env:
- name: ACCEPT_EULA
value: "Y"
- name: SA_PASSWORD
value: "Password123!#"
ports:
- containerPort: 1433
---
apiVersion: v1
kind: Service
metadata:
name: sql-server
spec:
selector:
app: sql-server
ports:
- protocol: TCP
port: 1433
targetPort: 1433
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: redis-deployment
spec:
replicas: 1
selector:
matchLabels:
app: redis
template:
metadata:
labels:
app: redis
spec:
containers:
- name: redis
image: docker.io/bitnami/redis:7.2
env:
# ALLOW_EMPTY_PASSWORD is recommended only for development.
- name: ALLOW_EMPTY_PASSWORD
value: "yes"
- name: REDIS_DISABLE_COMMANDS
value: "FLUSHDB,FLUSHALL"
ports:
- containerPort: 6379
volumeMounts:
- name: redis-data
mountPath: /bitnami/redis/data
volumes:
- name: redis-data
emptyDir: {}
---
apiVersion: v1
kind: Service
metadata:
name: redis
spec:
selector:
app: redis
ports:
- protocol: TCP
port: 6379
targetPort: 6379
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: rabbitmq-deployment
spec:
replicas: 1
selector:
matchLabels:
app: rabbitmq
template:
metadata:
labels:
app: rabbitmq
spec:
containers:
- name: rabbitmq
image: rabbitmq:3-management
ports:
- containerPort: 5672
- containerPort: 15672
env:
- name: RABBITMQ_DEFAULT_USER
value: admin
- name: RABBITMQ_DEFAULT_PASS
value: DOIA9234JF
volumeMounts:
- name: rabbitmq-data
mountPath: /var/lib/rabbitmq
volumes:
- name: rabbitmq-data
emptyDir: {}
---
apiVersion: v1
kind: Service
metadata:
name: rabbitmq
spec:
selector:
app: rabbitmq
ports:
- name: rabbitmq-port
protocol: TCP
port: 5672
targetPort: 5672
- name: rabbitmq-management-port
protocol: TCP
port: 15672
targetPort: 15672