본문 바로가기

⭐ AWS/AWS | Docker (도커)

Docker에서 새로운 컨테이너를 생성하고 웹 서버 만들기

# 도커를 하면 할 수록 티맥스의 제우스가 생각이 난다. (정확한 비교인지는 잘 모르겠다.)
# 제우스는 유료이고 도커는 오픈소스 즉 무료인데 그래서 도커가 각광을 받나 하는 생각이 든다.
# 도커는 강력하고 좋다. 아직 수박 겉핥기 정도 하고 있지만 재미있다.
# AWS EC2 위에서의 도커는 더 좋은 가용성을 보일수 밖에 없는 좋은 오픈소스 도구임에 틀림이 없다.
# 도커에대한 기본적인 구현은 유투브 강좌를 참조 하였다.

- 일단 Docker를 통해 빌드할 위치로 이동한다.

- pwd명령어를 통해 자신의 위치를 확인하자.

- 이전에 생성한 example_02번의 폴더를 복사하자.

- 동일한 웹페이지를 구현할 것이므로 복사를 수행하자.

- 복사가 됐으면 복사된 example_03번의 폴더로 이동하자

- ls -l 이나 ll 명령어를 통ㅈ해 리스트를 확인하자.

- 리스트 중에서 Dockerfile이라는 파일을 vi Dockerfile 명령어를 사용하여 열자.

- 위의 그리에서 RUN 명령어는 설치 및 업데이트 등 실행을 담당한다. (코드를 활용해 많은 라이브러리를 설치 할 수 있다.)

- EXPOSE 명령어는 서비스를 수행하는 포트명을 입력해준다. 8662, 9876 등 포트명은 SSH 등 이미 알려진 포트를 제외한 다양하게 지정 할 수 있다.

- 위의 작업이 완료가 되면 빌드를 수행한다.

- docker images 명령어를 통해 현재 생성된 이미지를 모두 확인 할 수 있다.

- 방금 빌드한 example_03번의 이미지가 생성된것을 확인 할 수 있다.

- 자 이제 빌드된 이미지를 실행해보자.

- docker run -p 9876:80 -v /home/ubuntu/example_03/html:/var/www/html example_03 명령어로 수행하면된다.

- AWS EC2 인스턴스의 보안그룹에서 9876번의 인바운드 그룹을 추가해주자.

- 자 그리고 이제 EC2 인스턴스의 퍼블릭 IP:9876 을 입력하여 웹페이지 상태를 살펴보자.

- 위와 같이 뜨면 example_03번의 컨테이너에서 아파치를통해 9876번 포트로 서비스하는 웹서버를 구현했다.

- 컨테이너가 5개~20개정도면 사람이 관리 할 수 있을거 같은데... 100개를 넘어가면 관리가 힘들거 같다.

- CI/CD도 구현해야하니 docker와 쿠버네티스의 조합을 실습해보는것도 좋은 경함이 될거 같다.