์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- github
- ๋ฅ๋ฌ๋
- ํ ์คํธ๋ถ์
- ํ๋ธ๋ก
- AWS
- ๋ฐ์ดํฐ ๋ถ์
- ๋ฐฑ์ค
- DFS
- ๊นํ๋ธ
- ํ ์คํธ๋ง์ด๋
- nlp
- ์๋ง์กด์น์๋น์ค
- ์๊ณ ๋ฆฌ์ฆ
- erp
- sap
- ์์ฐ์ด์ฒ๋ฆฌ
- AI
- ๋ฐ์ดํฐ๋ถ์
- tableau
- Git
- abap
- ์๋ฐ์คํฌ๋ฆฝํธ
- ํ๋ธ๋ฃจ
- ์ฝ๋ฉํ ์คํธ
- ๋ฆฌ์กํธ
- ํ์ด์ฌ
- react
- ์ฝํ
- ์ธ๊ณต์ง๋ฅ
- ๋น ๋ฐ์ดํฐ
- Today
- Total
DATA101
[AWS ECR] Docker Push EOF ์๋ฌ ํด๊ฒฐ ๋ฐฉ๋ฒ ๋ณธ๋ฌธ
[AWS ECR] Docker Push EOF ์๋ฌ ํด๊ฒฐ ๋ฐฉ๋ฒ
DATA101 2024. 2. 4. 17:45๐ ๋ชฉ์ฐจ
1. ๊ฐ์
2. ์๋ฌ ๋ฉ์์ง
3. ํด๊ฒฐ ๋ฐฉ๋ฒ
4. ๋ฌธ์ ํด๊ฒฐ
๐จโ๐ป 1. ๊ฐ์
๋ณธ ํฌ์คํ ์์๋ ๋ก์ปฌ ํ๊ฒฝ์ ๋์ปค(Docker) ์ด๋ฏธ์ง๋ฅผ AWS Elastic Container Registry (ECR) ๋ฆฌํฌ์งํ ๋ฆฌ์ push ์ ๋ฐ์ํ๋ EOF ์ค๋ฅ ํด๊ฒฐ๋ฐฉ๋ฒ์ ๋ํด ๋ค๋ฃน๋๋ค.
โ ์ฐธ๊ณ : Docker Image ๋น๋ ํ AWS ECR ์ ๋ก๋ํ๋ ๋ฐฉ๋ฒ
https://heytech.tistory.com/415
AWS Lambda์ Docker๋ฅผ ํ์ฉํ ํ์ผ ์ ๋ก๋/์ฝ๊ธฐ ์์คํ ๊ตฌํ
๐ ๋ชฉ์ฐจ 1. ๊ฐ์ 2. AWS ๊ธฐ๋ณธ ์ธํ 3. React ๊ธฐ๋ฐ ์น ํ์ด์ง ๊ตฌํ 4. AWS ECR ์์ฑ 5. AWS IAM Role ์์ฑ 6. ํ๋ก์ ํธ ํ์ผ ๋ฐ๊ธฐ 7. Docker ์ค์น 8. AWS CLI ์ค์น 9. Docker ์ด๋ฏธ์ง ๋น๋ 10. AWS ECR ๋ก๊ทธ์ธ 11. ๋์ปค ์ด๋ฏธ์ง
heytech.tistory.com
๐ค 2. ์๋ฌ ๋ฉ์์ง
์๋์ (๊ทธ๋ฆผ 1)๊ณผ ๊ฐ์ด, CLI ํตํด AWS ECR ๋ก๊ทธ์ธ ๋ฐ ๋์ปค ์ด๋ฏธ์ง ๋น๋ ํ๊น ๊น์ง ์๋ฃํ์์ต๋๋ค.

ํ๋ฐ ๋์ปค ์ด๋ฏธ์ง ํธ์ํ ๋ ์๋์ (๊ทธ๋ฆผ 2)์ ๊ฐ์ด EOF ์๋ฌ๊ฐ ๋ฐ์ํ์์ต๋๋ค.

โ 3. ํด๊ฒฐ ๋ฐฉ๋ฒ
ํด๊ฒฐ ๋ฐฉ๋ฒ์ ์ฌํํฉ๋๋ค.
Step 1. ๋ฆฌํฌ์งํ ๋ฆฌ ๊ถํ ํธ์ง ํ์ด์ง ์ ๊ทผ
์๋์ (๊ทธ๋ฆผ 3)๊ณผ ๊ฐ์ด AWS ECR Repository ์ฝ์ ๋ด '์์ ' > '๊ถํ' ๋ฒํผ์ ํด๋ฆญํ์ฌ ๊ถํ ์์ ํ์ด์ง๋ก ์ด๋ํด ์ค๋๋ค.

Step 2. ๋ณด์ ์ฃผ์ฒด ํธ์ง
ํ๋จ ๊ทธ๋ฆผ 4์ ๊ฐ์ด '๊ณ ๊ธ' ํด๋ฆญ ํ '๋ชจ๋ ์ฌ๋(*)'์ ์ฒดํฌํฉ๋๋ค (์๋ฌธ : principal:*).

Step 3. Action ์ถ๊ฐ
์๋ ๊ทธ๋ฆผ 5์ ๊ฐ์ด, "๋ค๋ฅธ ์ต์ ์ถ๊ฐ" ์ ๋ ฅ์ฐฝ์ ๊ฐ action ์ด๋ฆ์ ์ ๋ ฅํ์ฌ ์ถ๊ฐํ๊ณ ์ ์ฅํฉ๋๋ค.
ecr:BatchGetImage
ecr:BatchCheckLayerAvailability
ecr:CompleteLayerUpload
ecr:GetDownloadUrlForLayer
ecr:InitiateLayerUpload
ecr:PutImage
ecr:UploadLayerPart

๐ 4. ๋ฌธ์ ํด๊ฒฐ
์์ ECR ๋ฆฌํฌ์งํ ๋ฆฌ ๊ถํ ํธ์ง ํ ๋ค์ docker ์ด๋ฏธ์ง push ํ๋ฉด ์๋ ๊ทธ๋ฆผ 6๊ณผ ๊ฐ์ด ์ ์์ ์ผ๋ก ์ ๋ก๋๋๋ ๊ฒ์ ํ์ธํ์ค ์ ์์ต๋๋ค.

๐ ์ฐธ๊ณ ํ ๋งํ ํฌ์คํ
1. AWS ๊ธฐ๋ฐ ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ
1) ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (1) React ๊ธฐ๋ฐ Frontend ๊ฐ๋ฐ
2) ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (2) AWS IAM ์ญํ ์์ฑ
3) ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (3) AWS Lambda ์์ฑ
4) ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (4) AWS S3 ์์ฑ
5) ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (5) AWS API Gateway ์์ฑ
6) ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (6) AWS Lambda ํจ์ ์์ฑ
7) ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (7) Axios ๊ธฐ๋ฐ API Call
8) ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (8) ํ์ผ ์ ๋ก๋ ํ ์คํธ
9) ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (9) AWS S3 ๊ธฐ๋ฐ ์น ํธ์คํ
2. AWS ํ์ฉ ํฌ์คํ
1) AWS Lambda์ Docker๋ฅผ ํ์ฉํ ํ์ผ ์ ๋ก๋/์ฝ๊ธฐ ์์คํ ๊ตฌํ
2) AWS Lambda์์ AWS S3 ํ์ผ ์ฝ์ด์ค๋ ๋ฐฉ๋ฒ
3) AWS DynamoDB ๊ฐ๋ ๋ฐ ํ ์ด๋ธ ์์ฑ ์ ์ฐจ(ํํฐ์ ํค, ์ ๋ ฌ ํค ๊ฐ๋ )
4) AWS Lambda๋ฅผ ํ์ฉํ DyanamoDB ํ ์ด๋ธ ๋ฐ์ดํฐ ์ฝ์ /์กฐํ ๋ฐฉ๋ฒ
5) [AWS ECR] Docker Push EOF ์๋ฌ ํด๊ฒฐ ๋ฐฉ๋ฒ
์ค๋์ ๋์ปค ์ด๋ฏธ์ง๋ฅผ AWS ECR์ push ์ ๋ฐ์ํ๋ EOF ์ค๋ฅ ํด๊ฒฐ๋ฐฉ๋ฒ์ ๋ํด ๋ค๋ฃจ์์ต๋๋ค.
ํฌ์คํ
๋ด์ฉ์ ์ค๋ฅ๊ฐ ์๊ฑฐ๋ ๋ณด์ํ ์ ์ด ์๋ค๋ฉด ์๋์ ๋๊ธ ๋จ๊ฒจ์ฃผ์๋ฉด ๊ฐ์ฌ๋๋ฆฌ๊ฒ ์ต๋๋ค.
๊ทธ๋ผ ์ค๋๋ ์ฆ๊ฒ๊ณ ๊ฑด๊ฐํ ํ๋ฃจ ๋ณด๋ด์๊ธธ ๋ฐ๋๋๋ค :)
๊ณ ๋ง์ต๋๋ค๐