mirror of
https://github.com/cna-bootcamp/lifesub.git
synced 2025-12-06 08:06:24 +00:00
add manifest
This commit is contained in:
parent
4d2bf7fb45
commit
7b0d5d4a75
BIN
.gradle/8.10/checksums/checksums.lock
Normal file
BIN
.gradle/8.10/checksums/checksums.lock
Normal file
Binary file not shown.
BIN
.gradle/8.10/checksums/md5-checksums.bin
Normal file
BIN
.gradle/8.10/checksums/md5-checksums.bin
Normal file
Binary file not shown.
BIN
.gradle/8.10/checksums/sha1-checksums.bin
Normal file
BIN
.gradle/8.10/checksums/sha1-checksums.bin
Normal file
Binary file not shown.
0
.gradle/8.10/dependencies-accessors/gc.properties
Normal file
0
.gradle/8.10/dependencies-accessors/gc.properties
Normal file
BIN
.gradle/8.10/executionHistory/executionHistory.bin
Normal file
BIN
.gradle/8.10/executionHistory/executionHistory.bin
Normal file
Binary file not shown.
BIN
.gradle/8.10/executionHistory/executionHistory.lock
Normal file
BIN
.gradle/8.10/executionHistory/executionHistory.lock
Normal file
Binary file not shown.
BIN
.gradle/8.10/fileChanges/last-build.bin
Normal file
BIN
.gradle/8.10/fileChanges/last-build.bin
Normal file
Binary file not shown.
BIN
.gradle/8.10/fileHashes/fileHashes.bin
Normal file
BIN
.gradle/8.10/fileHashes/fileHashes.bin
Normal file
Binary file not shown.
BIN
.gradle/8.10/fileHashes/fileHashes.lock
Normal file
BIN
.gradle/8.10/fileHashes/fileHashes.lock
Normal file
Binary file not shown.
BIN
.gradle/8.10/fileHashes/resourceHashesCache.bin
Normal file
BIN
.gradle/8.10/fileHashes/resourceHashesCache.bin
Normal file
Binary file not shown.
0
.gradle/8.10/gc.properties
Normal file
0
.gradle/8.10/gc.properties
Normal file
Binary file not shown.
@ -1,2 +1,2 @@
|
||||
#Wed Feb 12 15:21:47 KST 2025
|
||||
gradle.version=8.4
|
||||
#Sat Feb 15 20:31:45 KST 2025
|
||||
gradle.version=8.10
|
||||
|
||||
Binary file not shown.
Binary file not shown.
2
.idea/compiler.xml
generated
2
.idea/compiler.xml
generated
@ -20,6 +20,6 @@
|
||||
<module name="lifesub.mysub-biz.test" />
|
||||
</profile>
|
||||
</annotationProcessing>
|
||||
<bytecodeTargetLevel target="17" />
|
||||
<bytecodeTargetLevel target="21" />
|
||||
</component>
|
||||
</project>
|
||||
2
.idea/misc.xml
generated
2
.idea/misc.xml
generated
@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ExternalStorageConfigurationManager" enabled="true" />
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" default="true" project-jdk-name="17" project-jdk-type="JavaSDK" />
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_21" project-jdk-name="23" project-jdk-type="JavaSDK" />
|
||||
</project>
|
||||
1
.idea/modules.xml
generated
1
.idea/modules.xml
generated
@ -4,7 +4,6 @@
|
||||
<modules>
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/modules/common/lifesub.common.main.iml" filepath="$PROJECT_DIR$/.idea/modules/common/lifesub.common.main.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/modules/member/lifesub.member.main.iml" filepath="$PROJECT_DIR$/.idea/modules/member/lifesub.member.main.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/modules/member/lifesub.member.test.iml" filepath="$PROJECT_DIR$/.idea/modules/member/lifesub.member.test.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/modules/mysub-biz/lifesub.mysub-biz.main.iml" filepath="$PROJECT_DIR$/.idea/modules/mysub-biz/lifesub.mysub-biz.main.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/modules/mysub-infra/lifesub.mysub-infra.main.iml" filepath="$PROJECT_DIR$/.idea/modules/mysub-infra/lifesub.mysub-infra.main.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/modules/recommend/lifesub.recommend.main.iml" filepath="$PROJECT_DIR$/.idea/modules/recommend/lifesub.recommend.main.iml" />
|
||||
|
||||
@ -68,6 +68,10 @@ configure(subprojects.findAll { !it.name.endsWith('-biz') && it.name != 'common'
|
||||
// Spring Boot
|
||||
implementation 'org.springframework.boot:spring-boot-starter-web'
|
||||
implementation 'org.springframework.boot:spring-boot-starter-validation'
|
||||
|
||||
// Actuator 추가
|
||||
implementation 'org.springframework.boot:spring-boot-starter-actuator'
|
||||
|
||||
// data
|
||||
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
|
||||
// JWT
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
79
deployment/database/deploy_db.sh
Normal file
79
deployment/database/deploy_db.sh
Normal file
@ -0,0 +1,79 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Namespace 존재 여부 확인 후 생성
|
||||
if ! kubectl get namespace lifesub-ns &> /dev/null; then
|
||||
kubectl create namespace lifesub-ns
|
||||
fi
|
||||
|
||||
# Namespace 전환
|
||||
kubens lifesub-ns
|
||||
|
||||
# 각 서비스별 설정 및 배포
|
||||
for service in member mysub recommend; do
|
||||
# values 파일 생성
|
||||
cat << EOF > values-${service}.yaml
|
||||
# PostgreSQL 아키텍처 설정
|
||||
architecture: standalone
|
||||
# 글로벌 설정
|
||||
global:
|
||||
postgresql:
|
||||
auth:
|
||||
postgresPassword: "Passw0rd"
|
||||
replicationPassword: "Passw0rd"
|
||||
database: "${service}"
|
||||
username: "admin"
|
||||
password: "Passw0rd"
|
||||
storageClass: "managed"
|
||||
|
||||
# Primary 설정
|
||||
primary:
|
||||
persistence:
|
||||
enabled: true
|
||||
storageClass: "managed"
|
||||
size: 10Gi
|
||||
|
||||
resources:
|
||||
limits:
|
||||
memory: "1Gi"
|
||||
cpu: "1"
|
||||
requests:
|
||||
memory: "0.5Gi"
|
||||
cpu: "0.5"
|
||||
|
||||
# 네트워크 설정
|
||||
service:
|
||||
type: ClusterIP
|
||||
ports:
|
||||
postgresql: 5432
|
||||
# 보안 설정
|
||||
securityContext:
|
||||
enabled: true
|
||||
fsGroup: 1001
|
||||
runAsUser: 1001
|
||||
EOF
|
||||
|
||||
# Service 파일 생성
|
||||
cat << EOF > svc-${service}.yaml
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: ${service}-external
|
||||
spec:
|
||||
ports:
|
||||
- name: tcp-postgresql
|
||||
port: 5432
|
||||
protocol: TCP
|
||||
targetPort: tcp-postgresql
|
||||
selector:
|
||||
app.kubernetes.io/component: primary
|
||||
app.kubernetes.io/instance: ${service}
|
||||
sessionAffinity: None
|
||||
type: LoadBalancer
|
||||
EOF
|
||||
|
||||
# Helm으로 PostgreSQL 설치
|
||||
helm upgrade -i ${service} -f values-${service}.yaml bitnami/postgresql --version 14.3.2
|
||||
|
||||
# 외부 서비스 생성
|
||||
kubectl apply -f svc-${service}.yaml
|
||||
done
|
||||
89
deployment/database/values-member.yaml
Normal file
89
deployment/database/values-member.yaml
Normal file
@ -0,0 +1,89 @@
|
||||
# PostgreSQL 아키텍처 설정
|
||||
architecture: replication
|
||||
|
||||
# 글로벌 설정
|
||||
global:
|
||||
postgresql:
|
||||
auth:
|
||||
postgresPassword: "Passw0rd"
|
||||
replicationPassword: "Passw0rd"
|
||||
database: "member"
|
||||
username: "admin"
|
||||
password: "Passw0rd"
|
||||
storageClass: "managed"
|
||||
|
||||
# Primary 설정
|
||||
primary:
|
||||
persistence:
|
||||
enabled: true
|
||||
storageClass: "managed"
|
||||
size: 10Gi
|
||||
|
||||
resources:
|
||||
limits:
|
||||
memory: "4Gi"
|
||||
cpu: "1"
|
||||
requests:
|
||||
memory: "2Gi"
|
||||
cpu: "0.5"
|
||||
|
||||
# 성능 최적화 설정
|
||||
extraEnvVars:
|
||||
- name: POSTGRESQL_SHARED_BUFFERS
|
||||
value: "1GB"
|
||||
- name: POSTGRESQL_EFFECTIVE_CACHE_SIZE
|
||||
value: "3GB"
|
||||
- name: POSTGRESQL_MAX_CONNECTIONS
|
||||
value: "200"
|
||||
- name: POSTGRESQL_WORK_MEM
|
||||
value: "16MB"
|
||||
- name: POSTGRESQL_MAINTENANCE_WORK_MEM
|
||||
value: "256MB"
|
||||
|
||||
# 고가용성 설정
|
||||
podAntiAffinityPreset: soft
|
||||
|
||||
# Secondary 설정
|
||||
readReplicas:
|
||||
replicaCount: 2
|
||||
|
||||
persistence:
|
||||
enabled: true
|
||||
storageClass: "managed"
|
||||
size: 10Gi
|
||||
|
||||
resources:
|
||||
limits:
|
||||
memory: "2Gi"
|
||||
cpu: "1"
|
||||
requests:
|
||||
memory: "1Gi"
|
||||
cpu: "0.5"
|
||||
|
||||
# 성능 최적화 설정
|
||||
extraEnvVars:
|
||||
- name: POSTGRESQL_SHARED_BUFFERS
|
||||
value: "1GB"
|
||||
- name: POSTGRESQL_EFFECTIVE_CACHE_SIZE
|
||||
value: "3GB"
|
||||
- name: POSTGRESQL_MAX_CONNECTIONS
|
||||
value: "200"
|
||||
- name: POSTGRESQL_WORK_MEM
|
||||
value: "16MB"
|
||||
- name: POSTGRESQL_MAINTENANCE_WORK_MEM
|
||||
value: "256MB"
|
||||
|
||||
# 고가용성 설정
|
||||
podAntiAffinityPreset: soft
|
||||
|
||||
# 네트워크 설정
|
||||
service:
|
||||
type: ClusterIP
|
||||
ports:
|
||||
postgresql: 5432
|
||||
|
||||
# 보안 설정
|
||||
securityContext:
|
||||
enabled: true
|
||||
fsGroup: 1001
|
||||
runAsUser: 1001
|
||||
89
deployment/database/values-mysub.yaml
Normal file
89
deployment/database/values-mysub.yaml
Normal file
@ -0,0 +1,89 @@
|
||||
# PostgreSQL 아키텍처 설정
|
||||
architecture: replication
|
||||
|
||||
# 글로벌 설정
|
||||
global:
|
||||
postgresql:
|
||||
auth:
|
||||
postgresPassword: "Passw0rd"
|
||||
replicationPassword: "Passw0rd"
|
||||
database: "mysub"
|
||||
username: "admin"
|
||||
password: "Passw0rd"
|
||||
storageClass: "managed"
|
||||
|
||||
# Primary 설정
|
||||
primary:
|
||||
persistence:
|
||||
enabled: true
|
||||
storageClass: "managed"
|
||||
size: 10Gi
|
||||
|
||||
resources:
|
||||
limits:
|
||||
memory: "4Gi"
|
||||
cpu: "1"
|
||||
requests:
|
||||
memory: "2Gi"
|
||||
cpu: "0.5"
|
||||
|
||||
# 성능 최적화 설정
|
||||
extraEnvVars:
|
||||
- name: POSTGRESQL_SHARED_BUFFERS
|
||||
value: "1GB"
|
||||
- name: POSTGRESQL_EFFECTIVE_CACHE_SIZE
|
||||
value: "3GB"
|
||||
- name: POSTGRESQL_MAX_CONNECTIONS
|
||||
value: "200"
|
||||
- name: POSTGRESQL_WORK_MEM
|
||||
value: "16MB"
|
||||
- name: POSTGRESQL_MAINTENANCE_WORK_MEM
|
||||
value: "256MB"
|
||||
|
||||
# 고가용성 설정
|
||||
podAntiAffinityPreset: soft
|
||||
|
||||
# Secondary 설정
|
||||
readReplicas:
|
||||
replicaCount: 2
|
||||
|
||||
persistence:
|
||||
enabled: true
|
||||
storageClass: "managed"
|
||||
size: 10Gi
|
||||
|
||||
resources:
|
||||
limits:
|
||||
memory: "2Gi"
|
||||
cpu: "1"
|
||||
requests:
|
||||
memory: "1Gi"
|
||||
cpu: "0.5"
|
||||
|
||||
# 성능 최적화 설정
|
||||
extraEnvVars:
|
||||
- name: POSTGRESQL_SHARED_BUFFERS
|
||||
value: "1GB"
|
||||
- name: POSTGRESQL_EFFECTIVE_CACHE_SIZE
|
||||
value: "3GB"
|
||||
- name: POSTGRESQL_MAX_CONNECTIONS
|
||||
value: "200"
|
||||
- name: POSTGRESQL_WORK_MEM
|
||||
value: "16MB"
|
||||
- name: POSTGRESQL_MAINTENANCE_WORK_MEM
|
||||
value: "256MB"
|
||||
|
||||
# 고가용성 설정
|
||||
podAntiAffinityPreset: soft
|
||||
|
||||
# 네트워크 설정
|
||||
service:
|
||||
type: ClusterIP
|
||||
ports:
|
||||
postgresql: 5432
|
||||
|
||||
# 보안 설정
|
||||
securityContext:
|
||||
enabled: true
|
||||
fsGroup: 1001
|
||||
runAsUser: 1001
|
||||
89
deployment/database/values-recommend.yaml
Normal file
89
deployment/database/values-recommend.yaml
Normal file
@ -0,0 +1,89 @@
|
||||
# PostgreSQL 아키텍처 설정
|
||||
architecture: replication
|
||||
|
||||
# 글로벌 설정
|
||||
global:
|
||||
postgresql:
|
||||
auth:
|
||||
postgresPassword: "Passw0rd"
|
||||
replicationPassword: "Passw0rd"
|
||||
database: "recommend"
|
||||
username: "admin"
|
||||
password: "Passw0rd"
|
||||
storageClass: "managed"
|
||||
|
||||
# Primary 설정
|
||||
primary:
|
||||
persistence:
|
||||
enabled: true
|
||||
storageClass: "managed"
|
||||
size: 10Gi
|
||||
|
||||
resources:
|
||||
limits:
|
||||
memory: "4Gi"
|
||||
cpu: "1"
|
||||
requests:
|
||||
memory: "2Gi"
|
||||
cpu: "0.5"
|
||||
|
||||
# 성능 최적화 설정
|
||||
extraEnvVars:
|
||||
- name: POSTGRESQL_SHARED_BUFFERS
|
||||
value: "1GB"
|
||||
- name: POSTGRESQL_EFFECTIVE_CACHE_SIZE
|
||||
value: "3GB"
|
||||
- name: POSTGRESQL_MAX_CONNECTIONS
|
||||
value: "200"
|
||||
- name: POSTGRESQL_WORK_MEM
|
||||
value: "16MB"
|
||||
- name: POSTGRESQL_MAINTENANCE_WORK_MEM
|
||||
value: "256MB"
|
||||
|
||||
# 고가용성 설정
|
||||
podAntiAffinityPreset: soft
|
||||
|
||||
# Secondary 설정
|
||||
readReplicas:
|
||||
replicaCount: 2
|
||||
|
||||
persistence:
|
||||
enabled: true
|
||||
storageClass: "managed"
|
||||
size: 10Gi
|
||||
|
||||
resources:
|
||||
limits:
|
||||
memory: "2Gi"
|
||||
cpu: "1"
|
||||
requests:
|
||||
memory: "1Gi"
|
||||
cpu: "0.5"
|
||||
|
||||
# 성능 최적화 설정
|
||||
extraEnvVars:
|
||||
- name: POSTGRESQL_SHARED_BUFFERS
|
||||
value: "1GB"
|
||||
- name: POSTGRESQL_EFFECTIVE_CACHE_SIZE
|
||||
value: "3GB"
|
||||
- name: POSTGRESQL_MAX_CONNECTIONS
|
||||
value: "200"
|
||||
- name: POSTGRESQL_WORK_MEM
|
||||
value: "16MB"
|
||||
- name: POSTGRESQL_MAINTENANCE_WORK_MEM
|
||||
value: "256MB"
|
||||
|
||||
# 고가용성 설정
|
||||
podAntiAffinityPreset: soft
|
||||
|
||||
# 네트워크 설정
|
||||
service:
|
||||
type: ClusterIP
|
||||
ports:
|
||||
postgresql: 5432
|
||||
|
||||
# 보안 설정
|
||||
securityContext:
|
||||
enabled: true
|
||||
fsGroup: 1001
|
||||
runAsUser: 1001
|
||||
89
deployment/database/values.template.yaml
Normal file
89
deployment/database/values.template.yaml
Normal file
@ -0,0 +1,89 @@
|
||||
# PostgreSQL 아키텍처 설정
|
||||
architecture: replication
|
||||
|
||||
# 글로벌 설정
|
||||
global:
|
||||
postgresql:
|
||||
auth:
|
||||
postgresPassword: "Passw0rd"
|
||||
replicationPassword: "Passw0rd"
|
||||
database: "${DATABASE}"
|
||||
username: "admin"
|
||||
password: "Passw0rd"
|
||||
storageClass: "managed"
|
||||
|
||||
# Primary 설정
|
||||
primary:
|
||||
persistence:
|
||||
enabled: true
|
||||
storageClass: "managed"
|
||||
size: 10Gi
|
||||
|
||||
resources:
|
||||
limits:
|
||||
memory: "4Gi"
|
||||
cpu: "1"
|
||||
requests:
|
||||
memory: "2Gi"
|
||||
cpu: "0.5"
|
||||
|
||||
# 성능 최적화 설정
|
||||
extraEnvVars:
|
||||
- name: POSTGRESQL_SHARED_BUFFERS
|
||||
value: "1GB"
|
||||
- name: POSTGRESQL_EFFECTIVE_CACHE_SIZE
|
||||
value: "3GB"
|
||||
- name: POSTGRESQL_MAX_CONNECTIONS
|
||||
value: "200"
|
||||
- name: POSTGRESQL_WORK_MEM
|
||||
value: "16MB"
|
||||
- name: POSTGRESQL_MAINTENANCE_WORK_MEM
|
||||
value: "256MB"
|
||||
|
||||
# 고가용성 설정
|
||||
podAntiAffinityPreset: soft
|
||||
|
||||
# Secondary 설정
|
||||
readReplicas:
|
||||
replicaCount: 2
|
||||
|
||||
persistence:
|
||||
enabled: true
|
||||
storageClass: "managed"
|
||||
size: 10Gi
|
||||
|
||||
resources:
|
||||
limits:
|
||||
memory: "2Gi"
|
||||
cpu: "1"
|
||||
requests:
|
||||
memory: "1Gi"
|
||||
cpu: "0.5"
|
||||
|
||||
# 성능 최적화 설정
|
||||
extraEnvVars:
|
||||
- name: POSTGRESQL_SHARED_BUFFERS
|
||||
value: "1GB"
|
||||
- name: POSTGRESQL_EFFECTIVE_CACHE_SIZE
|
||||
value: "3GB"
|
||||
- name: POSTGRESQL_MAX_CONNECTIONS
|
||||
value: "200"
|
||||
- name: POSTGRESQL_WORK_MEM
|
||||
value: "16MB"
|
||||
- name: POSTGRESQL_MAINTENANCE_WORK_MEM
|
||||
value: "256MB"
|
||||
|
||||
# 고가용성 설정
|
||||
podAntiAffinityPreset: soft
|
||||
|
||||
# 네트워크 설정
|
||||
service:
|
||||
type: ClusterIP
|
||||
ports:
|
||||
postgresql: 5432
|
||||
|
||||
# 보안 설정
|
||||
securityContext:
|
||||
enabled: true
|
||||
fsGroup: 1001
|
||||
runAsUser: 1001
|
||||
9
deployment/manifest/configmaps/common-config.yaml
Normal file
9
deployment/manifest/configmaps/common-config.yaml
Normal file
@ -0,0 +1,9 @@
|
||||
# lifesub/deployment/manifest/configmaps/common-config.yaml
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: common-config
|
||||
data:
|
||||
JPA_DDL_AUTO: update
|
||||
JPA_SHOW_SQL: "true"
|
||||
ALLOWED_ORIGINS: "http://lifesub-web"
|
||||
10
deployment/manifest/configmaps/member-config.yaml
Normal file
10
deployment/manifest/configmaps/member-config.yaml
Normal file
@ -0,0 +1,10 @@
|
||||
# lifesub/deployment/manifest/configmaps/member-config.yaml
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: member-config
|
||||
data:
|
||||
SERVER_PORT: "8081"
|
||||
POSTGRES_HOST: "member-postgresql"
|
||||
POSTGRES_PORT: "5432"
|
||||
POSTGRES_DB: "member"
|
||||
13
deployment/manifest/configmaps/mysub-config.yaml
Normal file
13
deployment/manifest/configmaps/mysub-config.yaml
Normal file
@ -0,0 +1,13 @@
|
||||
|
||||
# lifesub/deployment/manifest/configmaps/mysub-config.yaml
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: mysub-config
|
||||
data:
|
||||
SERVER_PORT: "8082"
|
||||
POSTGRES_HOST: "mysub-postgresql"
|
||||
POSTGRES_PORT: "5432"
|
||||
POSTGRES_DB: "mysub"
|
||||
FEE_LEVEL_COLLECTOR: "50000"
|
||||
FEE_LEVEL_ADDICT: "100000"
|
||||
10
deployment/manifest/configmaps/recommend-config.yaml
Normal file
10
deployment/manifest/configmaps/recommend-config.yaml
Normal file
@ -0,0 +1,10 @@
|
||||
# lifesub/deployment/manifest/configmaps/recommend-config.yaml
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: recommend-config
|
||||
data:
|
||||
SERVER_PORT: "8083"
|
||||
POSTGRES_HOST: "recommend-postgresql"
|
||||
POSTGRES_PORT: "5432"
|
||||
POSTGRES_DB: "recommend"
|
||||
55
deployment/manifest/deployments/member-deployment.yaml
Normal file
55
deployment/manifest/deployments/member-deployment.yaml
Normal file
@ -0,0 +1,55 @@
|
||||
# lifesub/deployment/manifest/deployments/member-deployment.yaml
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: member
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app: member
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: member
|
||||
spec:
|
||||
containers:
|
||||
- name: member
|
||||
image: dg0200cr.azurecr.io/lifesub/member:1.0.0
|
||||
imagePullPolicy: Always
|
||||
ports:
|
||||
- containerPort: 8081
|
||||
resources:
|
||||
requests:
|
||||
cpu: 256m
|
||||
memory: 256Mi
|
||||
limits:
|
||||
cpu: 1024m
|
||||
memory: 1024Mi
|
||||
envFrom:
|
||||
- configMapRef:
|
||||
name: common-config
|
||||
- configMapRef:
|
||||
name: member-config
|
||||
- secretRef:
|
||||
name: common-secret
|
||||
- secretRef:
|
||||
name: member-secret
|
||||
#startupProbe:
|
||||
# tcpSocket:
|
||||
# port: 5432
|
||||
# initialDelaySeconds: 30
|
||||
# periodSeconds: 10
|
||||
# failureThreshold: 30
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: /actuator/health
|
||||
port: 8081
|
||||
initialDelaySeconds: 10
|
||||
periodSeconds: 5
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
path: /actuator/health
|
||||
port: 8081
|
||||
initialDelaySeconds: 60
|
||||
periodSeconds: 15
|
||||
55
deployment/manifest/deployments/mysub-deployment.yaml
Normal file
55
deployment/manifest/deployments/mysub-deployment.yaml
Normal file
@ -0,0 +1,55 @@
|
||||
# lifesub/deployment/manifest/deployments/mysub-deployment.yaml
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: mysub
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app: mysub
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: mysub
|
||||
spec:
|
||||
containers:
|
||||
- name: mysub
|
||||
image: dg0200cr.azurecr.io/lifesub/mysub:1.0.0
|
||||
imagePullPolicy: Always
|
||||
ports:
|
||||
- containerPort: 8082
|
||||
resources:
|
||||
requests:
|
||||
cpu: 256m
|
||||
memory: 256Mi
|
||||
limits:
|
||||
cpu: 1024m
|
||||
memory: 1024Mi
|
||||
envFrom:
|
||||
- configMapRef:
|
||||
name: common-config
|
||||
- configMapRef:
|
||||
name: mysub-config
|
||||
- secretRef:
|
||||
name: common-secret
|
||||
- secretRef:
|
||||
name: mysub-secret
|
||||
#startupProbe:
|
||||
# tcpSocket:
|
||||
# port: 5432
|
||||
# initialDelaySeconds: 30
|
||||
# periodSeconds: 10
|
||||
# failureThreshold: 30
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: /actuator/health
|
||||
port: 8082
|
||||
initialDelaySeconds: 10
|
||||
periodSeconds: 5
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
path: /actuator/health
|
||||
port: 8082
|
||||
initialDelaySeconds: 60
|
||||
periodSeconds: 15
|
||||
55
deployment/manifest/deployments/recommend-deployment.yaml
Normal file
55
deployment/manifest/deployments/recommend-deployment.yaml
Normal file
@ -0,0 +1,55 @@
|
||||
# lifesub/deployment/manifest/deployments/recommend-deployment.yaml
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: recommend
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app: recommend
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: recommend
|
||||
spec:
|
||||
containers:
|
||||
- name: recommend
|
||||
image: dg0200cr.azurecr.io/lifesub/recommend:1.0.0
|
||||
imagePullPolicy: Always
|
||||
ports:
|
||||
- containerPort: 8083
|
||||
resources:
|
||||
requests:
|
||||
cpu: 256m
|
||||
memory: 256Mi
|
||||
limits:
|
||||
cpu: 1024m
|
||||
memory: 1024Mi
|
||||
envFrom:
|
||||
- configMapRef:
|
||||
name: common-config
|
||||
- configMapRef:
|
||||
name: recommend-config
|
||||
- secretRef:
|
||||
name: common-secret
|
||||
- secretRef:
|
||||
name: recommend-secret
|
||||
#startupProbe:
|
||||
# tcpSocket:
|
||||
# port: 5432
|
||||
# initialDelaySeconds: 30
|
||||
# periodSeconds: 10
|
||||
# failureThreshold: 30
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: /actuator/health
|
||||
port: 8083
|
||||
initialDelaySeconds: 10
|
||||
periodSeconds: 5
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
path: /actuator/health
|
||||
port: 8083
|
||||
initialDelaySeconds: 60
|
||||
periodSeconds: 15
|
||||
8
deployment/manifest/secrets/common-secret.yaml
Normal file
8
deployment/manifest/secrets/common-secret.yaml
Normal file
@ -0,0 +1,8 @@
|
||||
# lifesub/deployment/manifest/secrets/common-secret.yaml
|
||||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
name: common-secret
|
||||
type: Opaque
|
||||
stringData:
|
||||
JWT_SECRET_KEY: "8O2HQ13etL2BWZvYOiWsJ5uWFoLi6NBUG8divYVoCgtHVvlk3dqRksMl16toztDUeBTSIuOOPvHIrYq11G2BwQ"
|
||||
11
deployment/manifest/secrets/member-secret.yaml
Normal file
11
deployment/manifest/secrets/member-secret.yaml
Normal file
@ -0,0 +1,11 @@
|
||||
# lifesub/deployment/manifest/secrets/member-secret.yaml
|
||||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
name: member-secret
|
||||
type: Opaque
|
||||
stringData:
|
||||
POSTGRES_USER: "admin"
|
||||
POSTGRES_PASSWORD: "Passw0rd"
|
||||
JWT_ACCESS_TOKEN_VALIDITY: "3600000"
|
||||
JWT_REFRESH_TOKEN_VALIDITY: "86400000"
|
||||
9
deployment/manifest/secrets/mysub-secret.yaml
Normal file
9
deployment/manifest/secrets/mysub-secret.yaml
Normal file
@ -0,0 +1,9 @@
|
||||
# lifesub/deployment/manifest/secrets/mysub-secret.yaml
|
||||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
name: mysub-secret
|
||||
type: Opaque
|
||||
stringData:
|
||||
POSTGRES_USER: "admin"
|
||||
POSTGRES_PASSWORD: "Passw0rd"
|
||||
9
deployment/manifest/secrets/recommend-secret.yaml
Normal file
9
deployment/manifest/secrets/recommend-secret.yaml
Normal file
@ -0,0 +1,9 @@
|
||||
# lifesub/deployment/manifest/secrets/recommend-secret.yaml
|
||||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
name: recommend-secret
|
||||
type: Opaque
|
||||
stringData:
|
||||
POSTGRES_USER: "admin"
|
||||
POSTGRES_PASSWORD: "Passw0rd"
|
||||
12
deployment/manifest/services/member-service.yaml
Normal file
12
deployment/manifest/services/member-service.yaml
Normal file
@ -0,0 +1,12 @@
|
||||
# lifesub/deployment/manifest/services/member-service.yaml
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: member
|
||||
spec:
|
||||
selector:
|
||||
app: member
|
||||
ports:
|
||||
- port: 80
|
||||
targetPort: 8081
|
||||
type: ClusterIP
|
||||
12
deployment/manifest/services/mysub-service.yaml
Normal file
12
deployment/manifest/services/mysub-service.yaml
Normal file
@ -0,0 +1,12 @@
|
||||
# lifesub/deployment/manifest/services/mysub-service.yaml
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: mysub
|
||||
spec:
|
||||
selector:
|
||||
app: mysub
|
||||
ports:
|
||||
- port: 80
|
||||
targetPort: 8082
|
||||
type: ClusterIP
|
||||
12
deployment/manifest/services/recommend-service.yaml
Normal file
12
deployment/manifest/services/recommend-service.yaml
Normal file
@ -0,0 +1,12 @@
|
||||
# lifesub/deployment/manifest/services/recommend-service.yaml
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: recommend
|
||||
spec:
|
||||
selector:
|
||||
app: recommend
|
||||
ports:
|
||||
- port: 80
|
||||
targetPort: 8083
|
||||
type: ClusterIP
|
||||
BIN
gradle/wrapper/gradle-wrapper.jar
vendored
BIN
gradle/wrapper/gradle-wrapper.jar
vendored
Binary file not shown.
2
gradle/wrapper/gradle-wrapper.properties
vendored
2
gradle/wrapper/gradle-wrapper.properties
vendored
@ -1,6 +1,6 @@
|
||||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.10-bin.zip
|
||||
networkTimeout=10000
|
||||
validateDistributionUrl=true
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
|
||||
7
gradlew
vendored
7
gradlew
vendored
@ -15,6 +15,8 @@
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
##############################################################################
|
||||
#
|
||||
@ -55,7 +57,7 @@
|
||||
# Darwin, MinGW, and NonStop.
|
||||
#
|
||||
# (3) This script is generated from the Groovy template
|
||||
# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
|
||||
# https://github.com/gradle/gradle/blob/HEAD/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
|
||||
# within the Gradle project.
|
||||
#
|
||||
# You can find Gradle at https://github.com/gradle/gradle/.
|
||||
@ -84,7 +86,8 @@ done
|
||||
# shellcheck disable=SC2034
|
||||
APP_BASE_NAME=${0##*/}
|
||||
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
|
||||
APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit
|
||||
APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s
|
||||
' "$PWD" ) || exit
|
||||
|
||||
# Use the maximum available, or set MAX_FD != -1 to use that value.
|
||||
MAX_FD=maximum
|
||||
|
||||
22
gradlew.bat
vendored
22
gradlew.bat
vendored
@ -13,6 +13,8 @@
|
||||
@rem See the License for the specific language governing permissions and
|
||||
@rem limitations under the License.
|
||||
@rem
|
||||
@rem SPDX-License-Identifier: Apache-2.0
|
||||
@rem
|
||||
|
||||
@if "%DEBUG%"=="" @echo off
|
||||
@rem ##########################################################################
|
||||
@ -43,11 +45,11 @@ set JAVA_EXE=java.exe
|
||||
%JAVA_EXE% -version >NUL 2>&1
|
||||
if %ERRORLEVEL% equ 0 goto execute
|
||||
|
||||
echo.
|
||||
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
|
||||
echo.
|
||||
echo Please set the JAVA_HOME variable in your environment to match the
|
||||
echo location of your Java installation.
|
||||
echo. 1>&2
|
||||
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2
|
||||
echo. 1>&2
|
||||
echo Please set the JAVA_HOME variable in your environment to match the 1>&2
|
||||
echo location of your Java installation. 1>&2
|
||||
|
||||
goto fail
|
||||
|
||||
@ -57,11 +59,11 @@ set JAVA_EXE=%JAVA_HOME%/bin/java.exe
|
||||
|
||||
if exist "%JAVA_EXE%" goto execute
|
||||
|
||||
echo.
|
||||
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
|
||||
echo.
|
||||
echo Please set the JAVA_HOME variable in your environment to match the
|
||||
echo location of your Java installation.
|
||||
echo. 1>&2
|
||||
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2
|
||||
echo. 1>&2
|
||||
echo Please set the JAVA_HOME variable in your environment to match the 1>&2
|
||||
echo location of your Java installation. 1>&2
|
||||
|
||||
goto fail
|
||||
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -27,6 +27,23 @@ jwt:
|
||||
|
||||
allowed-origins: ${ALLOWED_ORIGINS:http://localhost:3000}
|
||||
|
||||
# Actuator 설정
|
||||
management:
|
||||
endpoints:
|
||||
web:
|
||||
exposure:
|
||||
include: health,info,metrics,prometheus
|
||||
endpoint:
|
||||
health:
|
||||
show-details: always
|
||||
probes:
|
||||
enabled: true
|
||||
health:
|
||||
livenessState:
|
||||
enabled: true
|
||||
readinessState:
|
||||
enabled: true
|
||||
|
||||
springdoc:
|
||||
swagger-ui:
|
||||
path: /swagger-ui.html
|
||||
|
||||
@ -6,7 +6,7 @@ Spring-Boot-Classes: BOOT-INF/classes/
|
||||
Spring-Boot-Lib: BOOT-INF/lib/
|
||||
Spring-Boot-Classpath-Index: BOOT-INF/classpath.idx
|
||||
Spring-Boot-Layers-Index: BOOT-INF/layers.idx
|
||||
Build-Jdk-Spec: 17
|
||||
Build-Jdk-Spec: 21
|
||||
Implementation-Title: member
|
||||
Implementation-Version: 1.0.0
|
||||
|
||||
|
||||
Binary file not shown.
@ -27,6 +27,23 @@ jwt:
|
||||
|
||||
allowed-origins: ${ALLOWED_ORIGINS:http://localhost:3000}
|
||||
|
||||
# Actuator 설정
|
||||
management:
|
||||
endpoints:
|
||||
web:
|
||||
exposure:
|
||||
include: health,info,metrics,prometheus
|
||||
endpoint:
|
||||
health:
|
||||
show-details: always
|
||||
probes:
|
||||
enabled: true
|
||||
health:
|
||||
livenessState:
|
||||
enabled: true
|
||||
readinessState:
|
||||
enabled: true
|
||||
|
||||
springdoc:
|
||||
swagger-ui:
|
||||
path: /swagger-ui.html
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user