Achievement Goals
Day 1
- WAS를 Docker Image로 빌드하여 컨테이너화 해야 합니다.
- 컨테이너화한 WAS를 Registry에 Push해야 합니다.
- 기존에 배포된 Docker Image를 활용/실행해야 합니다.
- mongoDB 기준
- Docker Compose를 이용해, WAS와 DB를 한 번에 실행해야 합니다.
- WAS 이미지 빌드 및 push 자동화를 구현해야 합니다.
- ECR 서비스를 이용하는 방법을 배웁니다
연습과제: Hello World 서버 작성
Goal
- Fastify를 이용하여, 간단한 웹 서버를 만들고, HTTP 요청에 따른 응답을 확인합니다.
Fastify cli 설치
Fastify 프로젝트 생성
실행 확인
정상 작동 확인
배포시 로컬호스트는 노출되지 않으므로 Fastify address 0.0.0.0 설정
로컬호스트 주소에서 0.0.0.0으로 변경된 것 확인
실전과제: 서버 컨테이너화와 레지스트리로 push
Prerequisite
- node.js(fastify)로 작성된 웹 서버를 실행하고, HTTP 요청을 통해 작동함을 확인할 수 있어야 합니다.
- 도커 이미지/컨테이너/레지스트리의 개념을 이해하고 있어야 합니다.
- Dockerfile을 통한 이미지 빌드를 할 수 있어야 합니다.
Bare minimum requirement
- Fastify로 만든 Hello World 서버를 컨테이너 화하세요.
- Dockerfile을 작성해야 합니다.
- 빌드 후, 로컬에서 실행한 후, 서버가 잘 작동되는지 확인합니다.
- tag는 1.0으로 작성합니다
- AWS의 액세스 키와 시크릿을 이용해 CLI로 로그인하고, ECR에 이미지를 push 합니다.
도커 파일 작성
생성한 프로젝트를 이미지로 빌드
작동 확인
AWS ECR 생성
레포지토리 생성 확인
로그인 후 이미지 태그 지정 & 이미지 푸쉬
이미지 푸쉬 완료 확인
참고자료
도커 파일 작성
https://wooono.tistory.com/123
도커 ECR 레포지토리 생성 및 이미지 푸쉬
'Code States > TIL' 카테고리의 다른 글
[0427] Section 2. 프로젝트 - AWS 배포 Day 1 - 마일스톤 3(이미지 repository push 자동화) (0) | 2023.04.27 |
---|---|
[0427] Section 2. 프로젝트 - AWS 배포 Day 1 - 마일스톤 2(docker-compose 작성) (0) | 2023.04.27 |
[0426] 중간평가 오답노트 (0) | 2023.04.26 |
[0425] 배포 자동화 - 배포 전략 (0) | 2023.04.25 |
[0425] (페어) 배포 자동화 - 환경 변수 설정 (0) | 2023.04.25 |