AWS EC2 인스턴스에 Docker 설치하는 방법
AWS EC2 인스턴스 생성 후 접속하기
먼저 Docker를 설치할 AWS EC2 인스턴스를 생성해야 합니다. AWS Management Console에 접속하여 EC2 대시보드에서 “인스턴스 시작”을 클릭합니다.

이름을 설정해주시고 Amazon Linux 2023 AMI를 선택해줍니다.

인스턴스 유형을 선택해주시고 키 페어를 생성해줍니다. 나머지 옵션을 그대로 두고 인스턴스 시작을 눌러줍니다.

인스턴스 연결로 접속을 해야 합니다. 생성한 인스턴스를 선택 수 연결을 클릭해줍니다.

SSH 클라이언트 탭을 선택해주시고 ssh -i 옆에 네모를 클릭하여 복사해줍니다.

ssh -i "docker-study.pem" ec2-user@ec2-52-79-170-215.ap-northeast-2.compute.amazonaws.com
터미널을 실행한 뒤 키페어가 있는 경로로 이동해줍니다. 그리고 복사한 텍스트를 붙여넣기 해줍니다. 하지만 이 때 키 파일의 권한이 너무 열려 있다는 이유로 접속이 되지 않을 수 있습니다. 이 때는 권한을 변경해주어야 합니다. chmod 400 “docker-study.pem” 명령어를 통해 권한 설정을 변경해줍니다. 명령어나 키페어 이름은 인스턴스를 생성할 때 설정한 이름으로 사용자마다 어떻게 이름을 설정하냐에 따라 다를 수 있습니다.
#현재 권한 확인
ls -l docker-study.pem
출력에서 -rw-r--r--(644)나 -rwxr-xr-x(755)처럼 그룹·타인에게 읽기·쓰기가 허용돼 있다면 문제입니다.
chmod 400 "docker-study.pem"
SSH가 키 파일을 안전하다고 인식합니다.
권한 옵션을 변경해준 뒤 다시 접속하면 접속이 되는 것을 확인할 수 있습니다.
도커 설치하기
sudo yum update -y
패키지 업데이트를 해줍니다.
sudo yum install -y docker
Docker 설치를 해줍니다.


설치가 완료되면 명령어로 버전을 확인해줍니다.
docker -v
Docker 서비스 실행 및 부팅 시 자동 시작 설정
sudo systemctl start docker
sudo systemctl enable docker
Docker 명령어 간편 사용 설정
매번 sudo 명령어를 붙이지 않고 Docker를 실행하려면 현재 사용자에게 Docker 그룹 권한을 추가해야 합니다.
현재 $USER가 ec2-user이므로
sudo usermod -aG docker ec2-user
설치 확인
docker info

Docker 실행 테스트
sudo docker run hello-world

이미지가 다운로드되고, “Hello from Docker!” 메시지가 나오면 성공적으로 Docker가 작동하고 있는 것입니다.
추가 꿀팁 – Docker Compose 설치
Docker Compose는 여러 개의 Docker 컨테이너로 구성된 애플리케이션을 하나의 선언적 구성 파일로 정의하고, 단일 명령으로 생성·실행·관리할 수 있게 해 주는 도구입니다. YAML 형식의 docker-compose.yml
파일에는 서비스(service), 네트워크(network), 볼륨(volume) 등의 구성 요소가 명시되며, docker compose up
명령 한 번으로 이 모든 요소를 초기화해 전체 스택을 띄울 수 있습니다.
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" \
-o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose version
$(uname -s)
와 $(uname -m)
는 셸에서 명령 치환(command substitution)을 하는 구문입니다. 실행 시 각각 다음 값을 반환합니다uname -s
: 운영체제(커널) 이름을 출력합니다. Amazon Linux 2023에서는 "Linux"
가 나옵니다.uname -m
: 머신 하드웨어 플랫폼(아키텍처) 이름을 출력합니다. 예컨대 x86_64, aarch64 등이 나옵니다.
“https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)”
명령어를 그대로 사용하면, 현재 시스템에 맞는 바이너리(예: docker-compose-Linux-x86_64
)를 자동으로 내려받습니다. 수동으로 이름을 대체할 필요 없이, 제공된 명령어 그대로 실행하셔도 문제없습니다.

WS EC2에 Linux 환경을 구성하고 Docker를 설치하는 전 과정을 단계별로 자세히 알아보았습니다. 클라우드 환경에서 빠르고 효율적으로 애플리케이션을 컨테이너화할 준비가 된 것입니다. Docker는 단순히 설치에서 끝나는 것이 아니라, 수많은 이미지를 실행하고 네트워크를 구성하며, 데이터 볼륨을 관리하는 강력한 도구입니다. EC2 인스턴스 위에서 Docker를 활용하면 확장성과 관리 용이성을 극대화할 수 있습니다.