-
Notifications
You must be signed in to change notification settings - Fork 1
Deployment
Mr.GoodwaY edited this page Feb 3, 2024
·
3 revisions
- AWS S3
- AWS CloudFront
- AWS Route53
- AWSย Certificate Manager(ACM)
- https ํต์ ์ ์ํ SSL ์ธ์ฆ์ ๋ฐ๊ธ
- AWS EC2
- AWS ALB(Application Load Balancer)
- https ํต์ ์ ์ํด ์ ์ฉํจ
- AWS Route53
- ์๋ธ๋๋ฉ์ธ์ผ๋ก ์๋ฒ ์ฃผ์ ํ ๋น
- Personal Access Token ์์ฑ:
- GitHub ๊ณ์ ์ผ๋ก ๋ก๊ทธ์ธํฉ๋๋ค.
- ์ค๋ฅธ์ชฝ ์๋จ์ ํ๋กํ ์ฌ์ง์ ํด๋ฆญํ๊ณ , "Settings"๋ก ์ด๋ํฉ๋๋ค.
- ์ผ์ชฝ ๋ฉ๋ด์์ "Developer settings" ์๋์ "Personal access tokens"์ ์ ํํฉ๋๋ค.
- "Generate token"์ ํด๋ฆญํ๊ณ ํ์ํ ๊ถํ์ ์ ํํฉ๋๋ค.
- ๋ฐฐํฌ์ ํ์ํ ๊ถํ์ ์ ํํด์ผ ํ๋ฉฐ, worlflow, write:packages, delete:packages๋ฅผ ์ ํํฉ๋๋ค.
- ํ ํฐ์ ์์ฑํ๊ณ ์์ ํ ์ฅ์์ ๋ณต์ฌํฉ๋๋ค.
- GitHub Secrets์ ๋ฑ๋ก:
- ๋ ํฌ์งํ ๋ฆฌ๋ก ์ด๋ํ์ฌ "Settings"๋ฅผ ํด๋ฆญํฉ๋๋ค.
- ์ผ์ชฝ ๋ฉ๋ด์์ "Secrets"๋ฅผ ์ ํํ๊ณ , "New repository secret"์ ํด๋ฆญํ์ฌ ์๋ก์ด ์ํฌ๋ฆฟ์ ์ถ๊ฐํฉ๋๋ค.
- ์ํฌ๋ฆฟ ์ด๋ฆ(GHCR_TOKEN_์์ด๋)์ ์ง์ ํ๊ณ , ์์ ์์ฑํ Personal Access Token ๊ฐ์ ์ ๋ ฅํฉ๋๋ค.
- See
.github > workflows > frontend-pipeline.yml - frontend ๋ธ๋์น์ push๊ฐ ์ผ์ด๋๋ฉด ๋ฐฐํฌ๊ฐ ์์๋จ
- CI/CD
- Github container registry์์ ์บ์ ๋ฐ์์ด
- Github secrets์ ์ ์ฅ๋ ๊ฐ์ผ๋ก .envํ์ผ ์์ฑ
- ๋ชจ๋ ์ค์น ํ ๋น๋
- ๋น๋ ํ์ผ s3 ํด๋ผ์ด์ธํธ ๋ฐฐํฌ์ฉ ๋ฒ์ผ์ ์ ๋ก๋
- ์ฌ๋ ์๋ฆผ
- See
.github > workflows > backend-pipeline.yml - backend ๋ธ๋์น์ push๊ฐ ์ผ์ด๋๋ฉด ๋ฐฐํฌ๊ฐ ์์๋จ
- CI
- GitHub ์ปจํ ์ด๋ ๋ ์ง์คํธ๋ฆฌ์ ๋ก๊ทธ์ธ
- Github secrets์ ์ ์ฅ๋ ๊ฐ์ผ๋ก .envํ์ผ ์์ฑ
-
bakcend>Dockerfile๋ก Docker image ๋น๋ํ๊ณ Github container registry์ push - ์ฌ๋ ์๋ฆผ
- CD
- action runner๋ก ๋ฑ๋ก๋ ec2์์ ์คํ๋จ
- Github container registry์ ๋ก๊ทธ์ธ ํ Docker image pull
- Docker container ์คํ
-
--restart on-failure์ต์ ์ผ๋ก ์๋ฒ๊ฐ ๋ค์ด๋์ ๋ ์๋์ผ๋ก ์ฌ์คํ๋๋๋ก ์ค์
-
- ์ฌ๋ ์๋ฆผ