카테고리 없음

2. aws ec2에 Docker 설치 및 Dockerfile로 웹 서버 구동시키기

개복신 개발자 2022. 8. 31. 18:15
반응형

aws ec2 인스턴스의 jupyter notebook을 이용하여 docker 개발환경을 설정하고 이미지를 생성하여 서버를 돌리는 실습을 진행하였습니다.

 

1. sudo apt update

2. sudo apt install apt-transport-https 설치

3. sudo apt install ca-certificates

4.sudo apt install curl

5.sudo apt install softward-properties-common

6.curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

7.sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable"

8. sudo apt update 다시 실행

9. apt-cache policy docker-ce

10.sudo apt install docker-ce 설치

11. sudo systemctl status docker 도커 엔진이 구동되는지 확인

12. docker pull hello-world -->hello world 이미지를 다운 받음

--여기서 권한이 막히는 경우 생김 아래의 과정으로 권한 문제를 해결한다

a.보통은 docker group이 생겼을테지만, 만약 없으면 생성해준다.

$ sudo groupadd docker

 

b.docker group에 해당 유저를 추가

$ sudo usermod -aG docker $USER

c. 로그아웃 후 다시 로그인하거나 다음 명령어를 실행시켜야 적용이 된다.

$ newgrp docker

 

 

13.docker run hello-world

-->hello world container를 띄움

14. docker ps -a ->사용된 컨테이너 확인

15. docker rm id로 컨테이너 삭제 가능

-docker파일을 만들어보자

cd /home/ubuntu

mkdir example

cd example

sudo vi Dockerfile

--> 아래 코드 입력

FROM ubuntu:18.04
MAINTAINER Junhwan Seok <seok626898@gmail.com>

RUN apt-get update
RUN apt-get install -y apache2

EXPOSE 80

CMD ["apachectl", "-D", "FOREGROUND"]

16. 도커 파일을 빌드해보자

docker build -t example .

. -> 현재 directory 가르킴

example -> example 파일 이름

 

도커 이미지가 생깁니다!!

 

17.docker images 명령어로 확인해봅니다

 

18. docker run -p 80(server port):80(container port) example(image)

이렇게 서버를 돌린다.

apache는 80 포트를 기본 설정으로 사용한다

 

19. aws에서 보안에서 인바운드 규칙 새로 생성한다

http 유형에 80 포트 설정하고 저장하면 

해당 url로 접속 가능하다

반응형