Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
48 changes: 48 additions & 0 deletions k8s/deployment.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: team5-app
labels:
app: team5-app
spec:
replicas: 2
selector:
matchLabels:
app: team5-app
template:
metadata:
labels:
app: team5-app
spec:
containers:
- name: team5-app
image: ghcr.io/wafflestudio/23-5-team5-server:latest
imagePullPolicy: Always
ports:
- containerPort: 8080
env:
# --- DB 접속 정보 ---
- name: DB_HOST
value: "mysql"
- name: DB_PORT
value: "3306"
- name: DB_USER
value: "waffle"
- name: DB_PASSWORD
valueFrom:
secretKeyRef:
name: team5-secrets
key: mysql-user-password

# --- Redis 접속 정보 ---
- name: REDIS_HOST
value: "redis"
- name: REDIS_PORT
value: "6379"

# --- 보안 키 (JWT) ---
- name: JWT_SECRET
valueFrom:
secretKeyRef:
name: team5-secrets
key: jwt-secret
63 changes: 63 additions & 0 deletions k8s/mysql.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: mysql-pvc
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: mysql
spec:
selector:
matchLabels:
app: mysql
strategy:
type: Recreate
template:
metadata:
labels:
app: mysql
spec:
containers:
- name: mysql
image: mysql:8.0
ports:
- containerPort: 3306
env:
- name: MYSQL_ROOT_PASSWORD
valueFrom:
secretKeyRef:
name: team5-secrets
key: mysql-root-password
- name: MYSQL_USER
value: waffle
- name: MYSQL_PASSWORD
valueFrom:
secretKeyRef:
name: team5-secrets
key: mysql-user-password
- name: MYSQL_DATABASE
value: toyproject-team5
volumeMounts:
- name: mysql-persistent-storage
mountPath: /var/lib/mysql
volumes:
- name: mysql-persistent-storage
persistentVolumeClaim:
claimName: mysql-pvc
---
apiVersion: v1
kind: Service
metadata:
name: mysql
spec:
ports:
- port: 3306
selector:
app: mysql
28 changes: 28 additions & 0 deletions k8s/redis.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: redis
spec:
selector:
matchLabels:
app: redis
template:
metadata:
labels:
app: redis
spec:
containers:
- name: redis
image: redis:7-alpine
ports:
- containerPort: 6379
---
apiVersion: v1
kind: Service
metadata:
name: redis
spec:
ports:
- port: 6379
selector:
app: redis
12 changes: 12 additions & 0 deletions k8s/service.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
apiVersion: v1
kind: Service
metadata:
name: team5-app-service
spec:
type: LoadBalancer
selector:
app: team5-app
ports:
- protocol: TCP
port: 8080
targetPort: 8080
Loading