Docker

[기록용] 도커를 통한 배포 및 EC2 와 ECS의 차이점

피리음 2023. 4. 2. 15:45

 

EC2를 통한 도커 이미지 배포

# 원격 서버에 접속함.
$ $ ssh -i {private.key}.pem {username: ec2-user}@hostname


# 최신 업데이트 리스트 갱신
sudo yum update -y
# 도커 설치
sudo yum -y install docker
# 도커 서비스 시작
sudo service docker start
 
# docker 그룹을 ec2-user 유저에 추가하여 ec2-user가 관리자으로 docker를 실행할 수 있도록 함.
sudo usermod -a -G docker {username: ec2-user}

# 로그 오프함.
# 컴퓨터 부팅 시 docker가 실행되도록 설정
$ sudo systemctl enable docker

 

ECS를 통한 배포

- 비용문제로 아직 직접 해보진 못했다.

- ECS 는 Free Tier가 없다.. 즉 무료로 해볼 수 없다..ㅠ

ECS 중에서 FARGATE의 특징 :

- 각각의 Task가 하나의 도커 이미지로 구성되어 있다.

- Compatibilites 부분이 있는데, FARGATE 로 설정 시, 서버리스로 도커 컨테이너를 실행한다고 한다.

이는 서버가 항시 켜져있지 않고 요청이 왔을 때만 컨테이너를 실행하도록 한다고 한다. 따라서 요청을 받았을 때만 실행하므로 요청이 적으면 그만큼 비용도 적으니 EC2 대비 꽤 합리적인 선택이 될 수 있을 듯 하다. 또한 오토스케일 아웃이 (돈만 내면...) 가능하다고 한다.

- 그리고 도커 이미지에 특정 정보들을 주거나 설정들을 overwrite할 수 있다. ex) entry point, cmd.

- ECS 기능에서 로드 밸런서 기능이 자체적으로 지원하는 것으로 보인다. 따라서 트래픽 대응에 용이할 것으로 보인다.

 

EC2 와 ECS의 차이점

EC2 는 스스로 관리할 수 있는 부분이 많다. 모니터링와 보안 등을 직접 설정해줘야 되며 도커 설치 등도 직접 해야된다.

그 대신 그 만큼 자기 스스로 해야되는 부분이 많다.

 

ECS는 많은 것들을 클라우드에서 처리해준다고 한다. 모니터링 등등.

이후 추가 강의에서 더 알아볼 예정.

EC2 와 ECS 의 차이점

 

ref:

https://www.udemy.com/course/docker-kubernetes-the-practical-guide/learn/lecture/22626527#overview