본문으로 건너뛰기

AWS ECR

AWS ECR

목차


네트워크 설정

VPC 네트워크 구성

구분이름내용
VPCpista-ecs-vpc10.0.0.0/20
Public Subnetpista-ecs-subnet-public1-1a
pista-ecs-subnet-public2-1b
10.0.0.0/25
10.0.1.0/25
Private Subnetpista-ecs-subnet-private1-1a
pista-ecs-subnet-private2-1b
10.0.0.128/25
10.0.1.128/25
Internet gatewaypista-ecs-igwvpc 연결 : pista-ecs-vpc
Routing Table(public용)pista-ecs-rtb-publicRouting : 0.0.0.0/0, pista-ecs-igw
Subnet : pista-ecs-subnet-public1-1a
Subnet : pista-ecs-subnet-public2-1b
Routing Table(private용)pista-ecs-rtb-privateRouting : 추가 없음.
Subnet : pista-ecs-subnet-private1-1a
Subnet : pista-ecs-subnet-private2-1b
보안 그룹default(pista-ecs-sg-defult)

pista-ecs-sg-ec2

pista-ecs-sg-alb

pista-ecs-sg-container
-

SSH - 0.0.0.0(추후 변경 필요)

HTTP - 0.0.0.0

모든 TCP - 사용자 지정 - pista-ecs-sg-alb

VPC 생성(pista-ecs-vpc)

변수
VPC 설정-생성할 리소스VPC만
VPC 설정-이름 태그pista-ecs-vpc
VPC 설정-IPv4 CIDR 블록IPv4 수동 입력
VPC 설정-IPv4 CIDR10.0.0.0/16
VPC 설정-IPv6 CIDR 블록IPvCIDR블록없음
VPC 설정-테넌시기본값
VPC 설정-VPC 암호화 제어 ($)없음
태그-Namepista-ecs-vpc

VPC

VPC 설정 편집(pista-ecs-vpc)

VPC > VPC > pista-ecs-vpc > VPC 설정 편집

변수
DNS 설정-DNS 확인 활성화
DNS 설정-DNS 호스트 이름 활성화

VPC

DHCP 태그관리(pista-ecs-vpc)

VPC > DHCP 옵션 세트 > pista-rt-vpc > 태그 관리

변수
태그-Namepista-dhcp-vpc

DHCP


서브넷

서브넷 생성(pista-subnet-public1-1a)

변수
서브넷 이름pista-subnet-public1-1a
가용영역...-1a
IPv4 VPC CIDR 블록10.0.0.0/16
IPv4 서브넷 CIDR 블록10.0.0.0/25
태그-Namepista-subnet-public1-1a

서브넷 생성(pista-subnet-public2-1b)

변수
서브넷 이름pista-subnet-public2-1b
가용영역...-1b
IPv4 VPC CIDR 블록10.0.0.0/16
IPv4 서브넷 CIDR 블록10.0.1.0/25
태그-Namepista-subnet-public2-1b

서브넷 생성(pista-subnet-private1-1a)

변수
서브넷 이름pista-subnet-private1-1a
가용영역...-1a
IPv4 VPC CIDR 블록10.0.0.0/16
IPv4 서브넷 CIDR 블록10.0.0.128/25
태그-Namepista-test-subnet-private1-1a

서브넷 생성(pista-subnet-private2-1b)

변수
서브넷 이름pista-subnet-private2-1b
가용영역...-1b
IPv4 VPC CIDR 블록10.0.0.0/16
IPv4 서브넷 CIDR 블록10.0.1.128/25
태그-Namepista-subnet-private2-1b

subnet


인터넷 게이트웨이(Internet-gateway)

인터넷 게이트웨이 생성(pista-ecs-igw)

VPC > 인터넷 게이트웨이 > 인터넷 게이트웨이 생성

변수
태그-Namepista-ecs-igw

igw

인테넷 게이트웨이 VPC 연결

VPC > 인터넷 게이트웨이 > VPC연결

변수
VPC-사용pista-ecs-vpc

igw


라우팅 테이블 (routing table)

라우팅 테이블 생성 (pista-ecs-rtb-public)

변수
라우팅 테이블 설정-이름pista-ecs-rtb-public
라우팅 테이블 설정-VPCvpc
태그-Namepista-ecs-rtb-public

라우팅 편집 (pista-ecs-rtb-public)

변수
대상0.0.0.0/0
대상igw

서브넷 연결 편집 (pista-ecs-rtb-public)

변수
이용 가능한 서브넷public1
public2

igw-routing igw-subnet

라우팅 테이블 생성 (pista-ecs-rtb-private)

변수
라우팅 테이블 설정-이름pista-ecs-rtb-private
라우팅 테이블 설정-VPCvpc
태그-Namepista-ecs-rtb-private

라우팅 편집 (pista-ecs-rtb-private)

변수
대상없음

서브넷 연결 편집 (pista-ecs-rtb-private)

변수
이용 가능한 서브넷
private1
private2

보안 그룹

보안 그룹 생성 (pista-ecs-sg-default)

VPC > 보안그룹 > 보안그룹 생성

변수
태그-Namepista-ecs-sg-default

보안 그룹 생성 (pista-ecs-sg-ec2)

VPC > 보안그룹 > 보안그룹 생성

변수
인바운드SSH - 0.0.0.0/0
태그-Namepista-ecs-sg-ec2

보안 그룹 생성 (pista-ecs-sg-alb)

VPC > 보안그룹 > 보안그룹 생성

변수
인바운드HTTP - 0.0.0.0/0
태그-Namepista-ecs-sg-alb

보안 그룹 생성 (pista-ecs-sg-container)

VPC > 보안그룹 > 보안그룹 생성

변수
인바운드사용자 지정 TCP-pista-ecs-sg-alb
태그-Namepista-ecs-sg-container

EC2(Amazon Linux 2023)

인스턴스 생성(pista-ecs-ec2-al2023)

변수
태그-Namepista-ecs-ec2-al2023
AMIAmazon Linux 2023
인스턴스 유형t2.micro
키 페어pistakey
네트워크 설정-vpcvpc
네트워크 설정-서브넷서브넷
네트워크 설정-퍼블릭 IP 자동 할당
네트워크 설정-방화벽기존 보안 그룹 선택
네트워크 설정-일반보안그룹pista-ecs-sg-ec2
스토리지 구성1x32GIB gp3 루트불륨

Docker 설치 (Amazon Linux)

# Docker 설치
sudo yum update -y
sudo yum install -y docker
sudo systemctl start docker
sudo systemctl enable docker

# 사용자 그룹 추가
sudo usermod -aG docker $USER
newgrp docker

AWS CLI 설치 (Amazon Linux)

# Amazon Linux 2023에는 AWS CLI가 기본 설치되어 있음
aws --version

EC2(Ubuntu)

인스턴스 생성(pista-ecs-ec2-ubuntu)

변수
태그-Namepista-ecs-ec2-ubuntu
AMIUbuntu
인스턴스 유형t2.micro
키 페어pistakey
네트워크 설정-vpcvpc
네트워크 설정-서브넷서브넷
네트워크 설정-퍼블릭 IP 자동 할당
네트워크 설정-방화벽기존 보안 그룹 선택
네트워크 설정-일반보안그룹pista-ecs-sg-ec2
스토리지 구성1x32GIB gp3 루트불륨

Docker 설치 (Ubuntu)

# Docker GPG 키
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

# Docker 리포지토리
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list

# Docker 설치
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io

# 사용자 그룹 추가
sudo usermod -aG docker $USER
newgrp docker

AWS CLI 설치 (Ubuntu)

sudo apt install unzip
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install

docker build & image

web image


ECR(Elastic Container Registry)

ECR 생성(pista/web)

ECR > 리포지토리 > 리포지토리 생성

변수
일반 설정- 리포지토리 이름pista/web
이미지 태그 설정-이미지 태그 변경 가능Mutable

ECR 푸시(pista/web)

ECR > 리포지토리 > pista/web > 푸시 명령 보기

# 1. ECR 로그인
aws ecr get-login-password --region ap-southeast-1 | docker login --username AWS --password-stdin <AWS_ACCOUNT_ID>.dkr.ecr.ap-southeast-1.amazonaws.com

# 2. 이미지 빌드
docker build -t pista/web .

# 3. 이미지 태그 지정
docker tag pista/web:latest <AWS_ACCOUNT_ID>.dkr.ecr.ap-southeast-1.amazonaws.com/pista/web:latest

# 4. ECR에 푸시
docker push <AWS_ACCOUNT_ID>.dkr.ecr.ap-southeast-1.amazonaws.com/pista/web:latest

⚠️ <AWS_ACCOUNT_ID>를 실제 AWS 계정 ID(12자리 숫자)로 교체하세요.


관련 문서

그래프 뷰

그래프 데이터 로딩 중…
현재: AWS ECR
노드 클릭 → 이동 · 드래그 → 위치 조정