Skip to content

Commit e2ee709

Browse files
authored
[#109] 도커 파일 수정 및 app.yaml 파일 수정 (#112)
1 parent fb0ec26 commit e2ee709

File tree

6 files changed

+43
-100
lines changed

6 files changed

+43
-100
lines changed

.github/workflows/deploy.yml

Lines changed: 2 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -29,19 +29,5 @@ jobs:
2929
# 4. App Engine에 애플리케이션 배포
3030
- name: Deploy to App Engine
3131
run: |
32-
gcloud app deploy apps/express-server/app.yaml --image-url=us-central1-docker.pkg.dev/${{ secrets.GCP_PROJECT_ID }}/project/express-server:latest
33-
gcloud app deploy apps/next-client/app.yaml --image-url=us-central1-docker.pkg.dev/${{ secrets.GCP_PROJECT_ID }}/project/next-client:latest
34-
35-
# 5. PR에 댓글 남기기
36-
- name: Comment on PR
37-
uses: actions/github-script@v6
38-
if: ${{ github.event.workflow_run.event == 'pull_request' }}
39-
with:
40-
github-token: ${{ secrets.GITHUB_TOKEN }}
41-
script: |
42-
await github.issues.createComment({
43-
owner: context.repo.owner,
44-
repo: context.repo.repo,
45-
issue_number: context.payload.workflow_run.pull_requests[0].number,
46-
body: "PR 확인 완료! 배포가 잘 마무리 되었습니다.😎"
47-
})
32+
gcloud app deploy apps/express-server/app.yaml --image-url=asia-northeast3-docker.pkg.dev/${{ secrets.GCP_PROJECT_ID }}/project/express-server:latest
33+
gcloud app deploy apps/next-client/app.yaml --image-url=asia-northeast3-docker.pkg.dev/${{ secrets.GCP_PROJECT_ID }}/project/next-client:latest

.github/workflows/docker-img.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ jobs:
2828
- name: Configure Google Cloud SDK
2929
run: |
3030
gcloud --quiet config set project ${{ secrets.GCP_PROJECT_ID }}
31-
gcloud --quiet auth configure-docker us-central1-docker.pkg.dev
31+
gcloud --quiet auth configure-docker asia-northeast3-docker.pkg.dev
3232
3333
# 5. express-server 이미지 빌드 및 푸시
3434
- name: Build and Push express-server Image
@@ -38,8 +38,8 @@ jobs:
3838
file: ./apps/express-server/Dockerfile
3939
push: true
4040
tags: |
41-
us-central1-docker.pkg.dev/${{ secrets.GCP_PROJECT_ID }}/project/express-server:${{ github.sha }}
42-
us-central1-docker.pkg.dev/${{ secrets.GCP_PROJECT_ID }}/project/express-server:latest
41+
asia-northeast3-docker.pkg.dev/${{ secrets.GCP_PROJECT_ID }}/project/express-server:${{ github.sha }}
42+
asia-northeast3-docker.pkg.dev/${{ secrets.GCP_PROJECT_ID }}/project/express-server:latest
4343
cache-from: type=gha,scope=express-server
4444
cache-to: type=gha,mode=max,scope=express-server
4545
build-args: |
@@ -60,8 +60,8 @@ jobs:
6060
file: ./apps/next-client/Dockerfile
6161
push: true
6262
tags: |
63-
us-central1-docker.pkg.dev/${{ secrets.GCP_PROJECT_ID }}/project/next-client:${{ github.sha }}
64-
us-central1-docker.pkg.dev/${{ secrets.GCP_PROJECT_ID }}/project/next-client:latest
63+
asia-northeast3-docker.pkg.dev/${{ secrets.GCP_PROJECT_ID }}/project/next-client:${{ github.sha }}
64+
asia-northeast3-docker.pkg.dev/${{ secrets.GCP_PROJECT_ID }}/project/next-client:latest
6565
cache-from: type=gha,scope=next-client
6666
cache-to: type=gha,mode=max,scope=next-client
6767
build-args: |

apps/express-server/Dockerfile

Lines changed: 9 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,26 @@
1-
# Base Image
1+
# 베이스 이미지 설정
22
FROM node:20-alpine3.18 AS phase1
33

4+
# 작업 디렉터리 설정
45
WORKDIR /app
56

6-
# Copy necessary files
7+
# package.json이 변경될 경우에만 yarn 실행
78
COPY --chown=node:node turbo.json .
89
COPY --chown=node:node tsconfig.json .
910
COPY --chown=node:node package.json .
1011

11-
# Create the express-server directory and copy relevant files
12+
# 필요한 디렉터리 생성
1213
RUN mkdir -p apps/express-server
14+
15+
# 필요한 패키지 파일만 복사
1316
COPY --chown=node:node ./apps/express-server/package.json apps/express-server
1417
COPY --chown=node:node ./apps/express-server apps/express-server
1518

16-
# Environment variables for build arguments
17-
ARG JWT_SECRET
18-
ARG DB_USER
19-
ARG DB_HOST
20-
ARG DB_NAME
21-
ARG DB_PASSWORD
22-
ARG DB_PORT
23-
ARG FRONTEND_URL
24-
ARG DATA_API_KEY
25-
26-
# Set environment variables for runtime
27-
ENV JWT_SECRET=$JWT_SECRET
28-
ENV DB_USER=$DB_USER
29-
ENV DB_HOST=$DB_HOST
30-
ENV DB_NAME=$DB_NAME
31-
ENV DB_PASSWORD=$DB_PASSWORD
32-
ENV DB_PORT=$DB_PORT
33-
ENV FRONTEND_URL=$FRONTEND_URL
34-
ENV DATA_API_KEY=$DATA_API_KEY
35-
36-
# Install dependencies
19+
# 종속성 설치
3720
RUN yarn
3821

39-
# Build express-server
22+
# express-server 빌드
4023
RUN yarn build
4124

42-
# Start the server
25+
# 개발 환경에서 서버 실행
4326
CMD ["yarn", "workspace", "express-server", "start"]

apps/express-server/app.yaml

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,23 +3,24 @@ env: flex
33

44
manual_scaling:
55
instances: 1
6+
67
resources:
78
cpu: 1
89
memory_gb: 0.5
910
disk_size_gb: 10
1011

1112
env_variables:
12-
JWT_SECRET: 'b1fbf862fe5538e821c12ac9c45c9809f87e685e04ebe183ec061efd5a46820ea779b0d159732465ca36c97a62c4c7305e89df29b859cdabd5161b67548875fb'
13+
JWT_SECRET: 'projects/109725974101/secrets/JWT_SECRET/versions/latest'
1314
DB_USER: 'postgres'
14-
DB_HOST: '/cloudsql/f-lab-project-440413:us-central1:postgres'
15+
DB_HOST: '/cloudsql/medi-map-449217:us-central1:postgress'
1516
DB_NAME: 'postgres'
1617
DB_PASSWORD: 'postgres'
1718
DB_PORT: 5432
18-
FRONTEND_URL: 'https://f-lab-project-440413.uc.r.appspot.com'
19-
DATA_API_KEY: 'YJ8so8uNR%2FiHv%2FB3FhjsGfy%2BxFhgfB9tv9grEqDfzPkkoWEx8tIiME6UarZefKqWPeHo%2BE3XxrtqA8BH0WOlnQ%3D%3D'
19+
FRONTEND_URL: 'https://medi-map-449217.uc.r.appspot.com'
20+
DATA_API_KEY: 'projects/109725974101/secrets/DATA_API_KEY/versions/latest'
2021

2122
beta_settings:
22-
cloud_sql_instances: "f-lab-project-440413:us-central1:postgres"
23+
cloud_sql_instances: 'medi-map-449217:us-central1:postgress'
2324

2425
readiness_check:
2526
app_start_timeout_sec: 600

apps/next-client/Dockerfile

Lines changed: 13 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -1,55 +1,27 @@
1-
# Base Image
1+
# 베이스 이미지 설정
22
FROM node:20-alpine3.18 AS base
33

4-
# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine
5-
# to understand why libc6-compat might be needed.
4+
# 필요한 종속성 추가
65
RUN apk add --no-cache libc6-compat
76

8-
# Set working directory
7+
# 작업 디렉터리 설정
98
WORKDIR /app
109

11-
# Define build-time variables
12-
ARG GOOGLE_CLIENT_ID
13-
ARG GOOGLE_CLIENT_SECRET
14-
ARG NEXTAUTH_SECRET
15-
ARG NEXT_PUBLIC_LOCAL_BACKEND_URL
16-
ARG NEXTAUTH_URL
17-
ARG NEXT_PUBLIC_KAKAO_MAP_KEY
18-
ARG DATA_API_KEY
19-
20-
# Set environment variables to be used in the container
21-
ENV GOOGLE_CLIENT_ID=$GOOGLE_CLIENT_ID
22-
ENV GOOGLE_CLIENT_SECRET=$GOOGLE_CLIENT_SECRET
23-
ENV NEXTAUTH_SECRET=$NEXTAUTH_SECRET
24-
ENV NEXT_PUBLIC_LOCAL_BACKEND_URL=$NEXT_PUBLIC_LOCAL_BACKEND_URL
25-
ENV NEXTAUTH_URL=$NEXTAUTH_URL
26-
ENV NEXT_PUBLIC_KAKAO_MAP_KEY=$NEXT_PUBLIC_KAKAO_MAP_KEY
27-
ENV DATA_API_KEY=$DATA_API_KEY
28-
29-
# Create the next-client directory and copy necessary files
30-
RUN mkdir -p apps/next-client
31-
32-
# Copy root package.json and yarn.lock
33-
COPY package.json yarn.lock /app/
34-
35-
# Copy next-client package.json
36-
COPY ./apps/next-client/package.json /app/apps/next-client/
37-
38-
# Copy the rest of the next-client files
39-
COPY ./apps/next-client /app/apps/next-client/
40-
41-
# Install dependencies for next-client
42-
WORKDIR /app/apps/next-client
10+
# 패키지 파일 복사
11+
COPY package.json yarn.lock ./
12+
COPY apps/next-client/package.json apps/next-client/
13+
14+
# 종속성 설치
4315
RUN yarn --frozen-lockfile
4416

45-
# Copy the rest of the next-client application code into the container
46-
COPY --chown=node:node ./apps/next-client ./apps/next-client/
17+
# 애플리케이션 코드 복사
18+
COPY apps/next-client apps/next-client
4719

48-
# Build the Next.js app
20+
# Next.js 애플리케이션 빌드
4921
RUN yarn workspace next-client build
5022

51-
# Expose the port Next.js app runs on (default is 3000)
23+
# 애플리케이션 실행 포트 공개 (기본값: 3000)
5224
EXPOSE 3000
5325

54-
# Start the app
26+
# 애플리케이션 시작
5527
CMD ["yarn", "workspace", "next-client", "start"]

apps/next-client/app.yaml

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,14 @@ automatic_scaling:
77
max_num_instances: 5
88

99
env_variables:
10-
NEXT_PUBLIC_LOCAL_BACKEND_URL: "https://backend-dot-f-lab-project-440413.uc.r.appspot.com"
11-
GOOGLE_CLIENT_ID: "560997285561-laq7qtne5qfo3uqvm7opijbvdpf05fdb.apps.googleusercontent.com"
12-
GOOGLE_CLIENT_SECRET: "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"
13-
NEXTAUTH_SECRET: "8b885ddb0a5da1f04784be72e27589c9fbfee22d20f4ef27f063d8ed7d8211bd"
14-
NEXTAUTH_URL: "https://f-lab-project-440413.uc.r.appspot.com"
15-
NEXT_PUBLIC_KAKAO_MAP_KEY: "23090c63da235aab83cf17abbb29bcab"
16-
DATA_API_KEY: "YJ8so8uNR%2FiHv%2FB3FhjsGfy%2BxFhgfB9tv9grEqDfzPkkoWEx8tIiME6UarZefKqWPeHo%2BE3XxrtqA8BH0WOlnQ%3D%3D"
10+
NEXT_PUBLIC_LOCAL_BACKEND_URL: "https://backend-dot-medi-map-449217.uc.r.appspot.com"
11+
NEXT_PUBLIC_GOOGLE_CLIENT_ID: "projects/109725974101/secrets/NEXT_PUBLIC_LOCAL_BACKEND_URL/versions/latest"
12+
GOOGLE_CLIENT_ID: "projects/109725974101/secrets/GOOGLE_CLIENT_ID/versions/latest"
13+
GOOGLE_CLIENT_SECRET: "projects/109725974101/secrets/GOOGLE_CLIENT_SECRET/versions/latest"
14+
NEXTAUTH_SECRET: "projects/109725974101/secrets/NEXTAUTH_SECRET/versions/latest"
15+
NEXTAUTH_URL: "projects/109725974101/secrets/NEXTAUTH_URL/versions/latest"
16+
NEXT_PUBLIC_KAKAO_MAP_KEY: "projects/109725974101/secrets/NEXT_PUBLIC_KAKAO_MAP_KEY/versions/latest"
17+
DATA_API_KEY: "projects/109725974101/secrets/DATA_API_KEY/versions/latest"
1718

1819
readiness_check:
1920
app_start_timeout_sec: 600

0 commit comments

Comments
 (0)