1. EC2 인스턴스 생성 후 기본 설정 확인
• EC2 인스턴스를 생성하고 보안 그룹에서 SSH (포트 22)를 열어두었는지 확인하세요.
• 인스턴스에 접속하려면 .pem 파일(키 페어)을 MacBook에 다운로드받아야 합니다.
2. EC2 인스턴스 접속
1. 터미널에서 SSH 접속
다음 명령어로 EC2에 접속합니다.
ssh -i /path/to/your-key.pem ubuntu@@<EC2-퍼블릭-IP>
예:
ssh -i ~/Downloads/my-aws-key.pem ubuntu@@3.35.19.13
🔑 ec2-user는 Amazon Linux의 기본 사용자 이름입니다. Ubuntu의 경우 ubuntu를 사용합니다.
2. 접속 확인
성공적으로 접속되면 프롬프트가 EC2 인스턴스 내부로 전환됩니다.
3. EC2에서 Docker 설치
EC2 인스턴스에 접속한 뒤 아래 명령어를 실행합니다. 인스턴스 종류에 따라 설치 방법이 약간 다를 수 있습니다.
(1) Amazon Linux 2
Amazon Linux 2에서는 Docker를 다음과 같이 설치합니다:
# 기존 패키지 업데이트
sudo yum update -y
# Docker 설치
sudo amazon-linux-extras enable docker
sudo yum install -y docker
# Docker 서비스 시작
sudo service docker start
# ec2-user를 Docker 그룹에 추가 (선택: 비루트 사용자를 위해)
sudo usermod -a -G docker ec2-user
(2) Ubuntu
Ubuntu에서는 다음 명령어를 사용합니다:
# 기존 패키지 업데이트
sudo apt-get update
# Docker 의존성 설치
sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common
# Docker GPG 키 추가
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
# Docker 저장소 추가
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# Docker 설치
sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io
# Docker 서비스 시작
sudo systemctl start docker
# 현재 사용자를 Docker 그룹에 추가 (선택)
sudo usermod -aG docker $USER
4. Docker 설치 확인
Docker가 정상적으로 설치되었는지 확인합니다.
docker --version
정상 출력 예:
Docker version 20.10.25, build abc123
5. Docker 기본 실행 테스트
테스트로 Docker 컨테이너를 실행해 봅니다:
sudo docker run hello-world
이 명령어는 Docker Hub에서 hello-world 이미지를 다운로드하고 실행합니다. 성공하면 Docker가 정상적으로 작동하는 것입니다.
6. 로컬 MacBook에서 EC2 관리
EC2 인스턴스에서 Docker가 설치되면 로컬 MacBook에서도 Docker CLI를 사용해 EC2의 Docker를 원격으로 제어할 수 있습니다. 이를 위해 다음을 수행하세요:
1. EC2에서 Docker 데몬을 원격 활성화
EC2에서 /etc/docker/daemon.json 파일을 수정하여 Docker API를 활성화합니다:
{
"hosts": ["tcp://0.0.0.0:2375", "unix:///var/run/docker.sock"]
}
변경 후 Docker 서비스를 다시 시작합니다:
sudo service docker restart
2. MacBook에서 Docker CLI로 EC2 Docker 접근
MacBook에서 환경 변수를 설정하여 EC2의 Docker를 원격 제어합니다:
export DOCKER_HOST=tcp://<EC2-퍼블릭-IP>:2375
docker ps
AWS EC2에서 권한 설정
1. Docker 설치
1.1 패키지 업데이트
AWS EC2에서 최신 패키지 정보를 업데이트:
sudo apt update
1.2 HTTPS 관련 패키지 설치
Docker 설치를 위해 HTTPS 및 관련 패키지를 설치:
sudo apt install apt-transport-https ca-certificates curl software-properties-common
설치되는 패키지
• apt-transport-https: HTTPS로 패키지를 다운로드하기 위한 모듈.
• ca-certificates: 인증서를 관리하여 안전한 통신 보장.
• curl: 파일을 전송하기 위한 명령줄 도구.
• software-properties-common: PPA 저장소 추가 및 관리 도구.
1.3 Docker GPG 키 추가
Docker 저장소의 신뢰성을 확인하기 위해 GPG 키를 추가:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
1.4 Docker 저장소 추가
Docker 패키지가 있는 저장소를 Ubuntu에 등록:
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"
1.5 패키지 목록 다시 업데이트
새로 추가된 Docker 저장소를 포함하여 패키지 정보를 업데이트:
sudo apt update
1.6 Docker 설치
Docker CE(Community Edition)를 설치:
sudo apt install docker-ce
1.7 Docker 설치 확인
설치된 Docker의 버전을 확인:
docker --version
출력 예:
Docker version 20.10.25, build abc123
2. Docker 권한 설정
2.1 현재 사용자 그룹 확인
Docker 설치 후, 현재 사용자가 속한 그룹 확인:
sudo groups $USER
결과 예시
ubuntu : ubuntu adm cdrom sudo dip lxd
2.2 Docker 그룹 생성
Docker 데몬에 접근할 수 있는 그룹을 생성:
sudo groupadd docker
2.3 사용자 Docker 그룹에 추가
현재 사용자를 docker 그룹에 추가:
sudo usermod -aG docker $USER
2.4 Docker 그룹에 사용자 추가 확인
getent 명령으로 Docker 그룹에 사용자 추가가 성공했는지 확인:
getent group docker
결과 예시
docker:x:988:ubuntu
3. 접속 재설정
3.1 SSH 접속 종료 후 재접속
변경 사항을 적용하기 위해 SSH를 종료하고 다시 접속:
exit
재접속:
ssh -i ./development/Tools/aws_ec2_keys/kafkaserverkey.pem ubuntu@<EC2 퍼블릭 IP>
3.2 인스턴스 재부팅 (선택)
변경 사항 적용을 위해 EC2를 재부팅할 수도 있습니다:
sudo reboot
4. Docker 권한 테스트
Docker를 sudo 없이 실행할 수 있는지 테스트:
docker run hello-world
'Docker' 카테고리의 다른 글
BusyBox와 Debian 비교 (0) | 2024.12.03 |
---|---|
Fork (0) | 2024.12.03 |
wget (0) | 2024.12.03 |
Docker 명령어 (0) | 2024.12.03 |
Docker (1) | 2024.11.12 |