본문 바로가기
dev-setup

[AWS EC2 배포] Docker Hub의 이미지 pull하고 컨테이너 run

by doraemin_dev 2025. 3. 31.

AWS의 RDS, EC2 생성해두었다.

[AWS RDS] 데이터베이스 만들기 (+ EC2 + Docker 배포)

 

[AWS RDS] 데이터베이스 만들기 (+ EC2 + Docker 배포)

[과정]외부 DB인 AWS RDS에 연결.만든 RDS를, EC2의 DB에 연결.DB의 접속 정보(hostname, 포트, 사용자, 비번)가 EC2에서 필요EC2 만들면서 보안 그룹 설정에 RDS 접근 추가[ STEP 1. RDS 생성 ]DB 엔진:  MySQLRDS 설

doraemin.tistory.com

 

[AWS] EC2 인스턴스 생성 및 배포

 

[AWS] EC2 인스턴스 생성 및 배포

0. AWS 회원가입 및 로그인카드 정보와 집 주소 등 다양한 개인 정보를 입력해주고...~ 회원가입 완료해주자.이제 로그인1. AWS EC2 인스턴스 생성하기  OS: Ubuntu 20.04 LTS (추천)인스턴스 유형: g4dn.xlar

doraemin.tistory.com

 

Docker Hub에 Image를 올려두었다.

[Docker] 서버 배포를 위한 Docker 코드 작성 및 실행

 

[Docker] 서버 배포를 위한 Docker 코드 작성 및 실행

배포를 위해 Docker를 사용해보자.간략히 보면, 내 코드를 Images로 만들어서 서버에 올리는 과정이다.STEP 1 :내 코드를 어떻게 Images로 만들지에 대한 설명서인 ⇨ Dockerfile 작성 STEP 2 :Dockerfile 기반

doraemin.tistory.com

이제 EC2에 pull 해온 뒤 실행시키자.


0. Ubuntu에 Docker 설치

* Docker가 설치되어 있다면, 필요없는 과정

# 1. 기존 패키지 업데이트
sudo apt update

# 2. Docker 설치
sudo apt install -y docker.io

# 3. Docker 자동 실행 설정
sudo systemctl enable docker
sudo systemctl start docker

# 4. Docker 버전 확인
docker --version

 

1. Docker 이미지 pull

Docker 이미지에 코드 + 환경 + 실행 방법이 다 들어 있다.

# 1. Docker Hub에서 이미지 pull
docker pull <your-dockerhub-username>/<image-name>:<tag>
# sudo docker pull doraemin/alz-backend:latest # 권한 에러시 sudo로 실행

# 2. .env 파일 준비
# nano .env
# 내용 작성
# 'ctrl+x'를 누르고 'y'를 누르기. (나가기 & 저장하기)

# 3. 컨테이너 실행
docker run -d -p 80:80 <your-dockerhub-username>/<image-name>:<tag>
# sudo docker run -d -p 8000:8000 --env-file .env doraemin/alz-backend:latest


# 컨테이너 상태 확인
sudo docker ps

# 기존 컨테이너 종료
sudo docker stop 컨테이너이름
sudo docker rm 컨테이너이름

# 중지된 컨테이너 정리
sudo docker container prune

# Docker 컨테이너 안에서 log 확인
sudo docker logs 컨테이너이름


완료!

# 접속
http://<EC2 퍼블릭 IP>

# 또는 FastAPI 문서
http://<EC2 퍼블릭 IP>/docs