본문 바로가기

프로젝트 실습/Docker

[책 리뷰] 완벽한 IT 인프라 구축을 위한 Docker (1)

- docker system info를 입력하여 현재 실행되고 있는 docker 시스템의 정보를  획득한다.

- 여기서는 컨테이너 갯수, 도커버전 및 스토리지 종류 등 정보를 확인 할 수 있다.

- docker system df 명령어를 입력하여 현재 docker가 사용하고 있는 용량을 확인 할 수 있다.

- docker pull nginx 를 입력하여 nginx 웹서버를 다운로드 할 수 있다.

- nginx 는 오토스케일링을 지원하고 대용량 웹서버 구축에 자주 활용된다.

- docker image ls 를 입력하여 현재 docker image들의 리스트를 확인 할 수 있다.

- docker 컨테이너를 기동해 보자.

- docker container run --name webserver -d -p 1004:80 nginx 명령어를 입력하여 웹서버를 구동하자.

- 위에서 주의할 점은 포트 매칭인데 1004번 포트를통해 80포트의 nginx 웹서버를 구동한다고 보면된다.

- 포트포워딩 개념으로 이해하면 될라나? 암튼 넘어가자.

- AWS에서 구동을 해줄것이므로 AWS의 보안그룹에서 포트 환경설정을 해줄 필요가 있다.

- 앞에 명령어에서 1004번 포트를통해 80포트 웹서버를 구동하기로 했으므로 AWS 보안그룹 에서는 1004번 포트를 개방 시켜줘야 1004번 포트를 통해 80포트의 웹서버 서비스가 원활하게 동작 가능하다.

- 실제로 IP + 포트번호를 입력하여 웹서버에서 nginx웹서버가 정상적으로 올라오는지 확인 할 수 있다.=

- nginx 서버의 상태를 확인하는 명령어는 docker container ps 이다.

- 위의 그림에서 PORTS를 보게된다면 1004 >80 으로 표기된것을 볼 수 있다.

- 1004번의 AWS 포트를통해 nginx의 80포트를 서비스 한다는 의미로 받아들이면 된다.

- 컨테이너 기동확인 명령어는 docker container stats webserver 이다.

- 위의 명령어를 입력하면 새로운 화면으로 전환되며 실시간으로 자원 활용 지표를 확인이 가능하다.

- 실시간으로 컨테이너의 사용 내역을 확인 할 수 있다.

- 컨테이너를 정지하는 명령어는 docker stop webserver 이다.

- 여기에서 webserver는 위에서 docker container를 run 할때 --name으로 입력했던 이름을 적어주면 된다.

- 위에 컨테이너 중지 명령으로인해 웹서버에 접근하면 위에 그림과 같이 사이트에 연결 할 수 없음 이라는 화면이 나온다.

- 컨테이너 기동 명령어는 docker start webserver 이다.

- 실행을 한 뒤 다시 아이피와 포트를 입력하여 웹서버를 띄우면 웹서버 화면이 뜨는것을 확인 할 수 있다.

- 도커 컨테이너 실행 후 nginx의 웹서버를 띄울 수 있다.

- 이번에는 도커 허브에 대해서 알아보자.

- 도커 허브는 이름에서도 알 수 있듯이 docker 이미지들을 업로드 및 다운로드 할 수 있는 공간이다.

- docker 허브에 회원가입 및 로그인 후 메인화면이 나온다.

- 화면에서 이미지 검색을 통해 다른 사람이 업로드 한 이미지를 다운로드 가능하고, 수정하여 다시 업로드 할 수도 있다.

- docker 이미지, docker 컨테이너 및 플러그 인 등 다양한 컨텐츠를 다운로드 할 수 있다.

- 예시로 docker hub에 업로드 되어있는 centos:7 버전을 다운로드 해보자.

- docker image pull centos:7 명령어를 입력하여 이미지를 다운로드 하자.

- 다운로드 된 이미지의 리스트를 확인하는 명령어는 docker iamges 이다.

- 현재 도커 이미지의 리스트를 확인 할 수 있다.

- 번외로 도커 이미지의 변조 및 악성코드 등의 포함 여부를 다운로드 시 확인 할 수있는 옵션이 있는데 DCT라고 한다.

- Docker Content Trust 이다.

- export DOCKER_CONTENT_TRUST=1 명령어를 입력하면, docker 이미지를 다운로드 시 상태 채킹등을 수행한다.

- DCT 옵션을 끄는 명령어는 export DOCKER_CONTENT_TRUST=0 명령어를 입력하여 DCT 옵션을 끌 수 있다.

- DCT 옵션을 끄고 다운로드 시 특별한 제약 및 검사 없이 다운이 가능하다.

- docker 이미지의 상세설정을 확인하는 명령어는 docker image inspect centos:7 이다.

- centos:7은 이미지 name 및 태깅 id 이므로 변경을 해야한다.