플랫폼 개발팀 기술 블로그

Docker : 설치 편 본문

Docker

Docker : 설치 편

DevStream 2019. 1. 31. 16:45

[Docker : 기초 편]

[Docker : 설치 편]

[Docker : 컨테이너 편]



Docker 설치 준비



도커는 기본적으로 Linux OS에서 구동되며 타 OS(Windows, Mac 등)에서는 도커 실행에 필요한 Docker Tool Box 또는 Docker for OS(Windows, Mac) 을 설치하거나 VMWare와 VirtualBox 같은 가상환경에서 Linux OS 설치 하여 도커를 구동 할 수 있다. 이번 Docker : 설치 편에서는 VirtualBox에서 Linux OS를 설치 해보고 Port Forwarding을 통해 HostOS에서 GuestOS로의 SSH접근 및 도커 설치 라고쓰고 리눅스설치 편이라 읽는다. 를 진행 해보도록 하겠다.


먼저 가상환경을 만들기 위한 VirtualBox를 다운로드 한다. (https://www.virtualbox.org/) 다운로드 후 설치를 진행하며 설치가 되는 동안 Linux 설치용 이미지도 함께 받도록 한다. 필자는 CentOS 7을 사용하였다. (https://www.centos.org/download/)

VirtualBox의 설치 과정은 비교적 간단하여 생략하며, 설치 후 실행 시 VT-x is not available 이라는 메세지가 뜰 경우 인텔 가상화기술(AMD의 경우 보안 가상머신 SVM)을 바이오스에서 활성화 시켜주어야 한다.





VirtualBox를 통한 CentOS 7 설치



설치 순서는 선 설명 후 이미지 순으로 VirtualBox에서의 CentOS 7 설치를 진행하겠다.

먼저 VirtualBox 설치가 끝났다면 실행 후 New 아이콘을 눌러 가상OS명과 간단한 스펙을 지정 해준다. CentOS를 입력하는 순간 빨간모자 아이콘의 Red Hat(Pizza Hut) 리눅스가 기본으로 잡히게 되는데 CentOS의 모태가 RHEL이라 그런지 Red Hat 리눅스로 자동 할당 된다. 목록 중 Other Linux를 설정해도 설치에는 무리가 없으니 적당히 선택하도록 한다. 메모리는 기본값이 1GB 였으나 필자는 2GB를 할당 해주었다. 메모리 설정이 끝나면 Create a virtual hard disk now 를 선택 후 Create버튼을 눌러 다음으로 이동한다.





CentOS 7 에 할당 할 가상 하드디스크의 용량을 설정 해준다. 기본값은 8GB이나 아무리 테스트용 OS라도 용량이 적은편이므로 넉넉하게 40GB정도 할당 해주도록 하자 Hard disk file type은 VDI, Storage on physical hard disk는 Dynamically allocated를 설정 해준다. 이 옵션은 40GB만큼을 논리적으로 할당하고 사용하는만큼 용량이 늘어나게 하겠다는 옵션이다.





생성이 완료되면 마우스 우 클릭 후 Settings 메뉴로 진입한다.





Storage 탭 클릭 후 Attributes란의 디스크 모양의 아이콘을 클릭하여 다운로드 받은 CentOS 7 iso 이미지를 부팅디스크로 설정한다.





부팅이 정상적으로 이루어지면 아래와 같은 설치 메뉴가 나타난다.

Install CentOS 7을 선택하고 엔터를 눌러 다음으로 이동한다.





한글을 사용 할 필요가 없다면 기본값으로 두고 다음 화면으로 넘어가도록 한다.





우선 Timezone부터 설정 해주도록 하자





테스트 할 때 파일이나 디렉토리의 생성 시간이 뉴욕 기준으로 되어있다면 충분히 헷갈릴 수 있으므로 서울 기준으로 변경 해주었다.





다음은 SOFTWARE SELECTION 메뉴로 이동한다.





SOFTWARE SELECTION은 어떤 기본환경으로 설치 할 것 인지 확인하는 메뉴인데 필자는 딱히 GUI가 필요하지 않고 간단한 테스트 용도로만 사용할 것이므로 최소설치를 선택 하였다.





다음은 파티션 설정과 디스크 할당 메뉴로 넘어간다.





파티셔닝을 위해서 Local Standard Disks에서 아까 VirtualBox에서 할당한 40GB짜리 하드디스크 아이콘을 클릭 한다. 체크 모양이 표기되면서 아래의 Other Storage Options가 활성화 되며 파티션 설정을 위해 I will configure partitioning을 선택 후 Done 버튼을 누른다.





이제 파티션을 설정 하도록 하자 Standard Partition을 선택 후 아래의 '+' 버튼을 눌러준다.





Mount Point에 swap을 입력 또는 선택 후 2GB를 할당 해준다. 보통 메모리가 2GB라면 2배인 4GB를 설정 해주지만 메모리가 넘칠만큼 과도한 테스트를 진행하는것이 아니므로 2GB만 주도록 하자.





다시 '+' 버튼을 눌러서 마운트 지점을 '/' 로 입력 후 용량은 비워둔채로 Add mount point 를 눌러준다.

용량입력란을 공백으로 두면 나머지 모든 용량을 할당하겠다는 의미이다.





파티션과 용량 할당이 완료되면 Done을 눌러 준다.





Accept Changes를 눌러 설정을 완료한다.





네트워크 연결을 위해 NETWORK & HOST NAME 메뉴로 이동한다.





우측의 버튼을 눌러 네트워크를 황성화 시키고 Done을 눌러 적용한다.





설정이 완료 되었다면 설치를 시작한다.





설치가 진행되는 동안 ROOT PASSWORD와 USER를 생성 할 수 있다.





ROOT 계정이므로 패스워드는 잊어버리지 않도록 대략 적절하게 설정해주자





ROOT 패스워드 설정이 완료 되었으면 유저를 생성 해준다.





유저 아이디와 패스워드 역시 대략 적절하다는 느낌이 들도록 설정 해준다.





설치가 완료되면 재부팅한다.





설치가 완료 된 모습이다.

방금 전 생성한 유저 아이디와 패스워드를 입력하여 로그인한다.




여기까지 VirtualBox에서 CentOS 7 설치의 과정이 모두 끝났다.

필자는 Windows OS를 이용중이고 작업을 하다보면 콘솔에 복사/붙여넣기를 해야 할 때가 많다. 

때문에 SSH를 통한 원격 접속으로 콘솔 명령을 수행하려 한다. 





Port Forwarding 설정



이제 SSH 를 통해 VirtualBox에서 구동되는 CentOS에 접속해보자.

먼저 GuestOS의 ip주소를 확인한다. ip addr 명령을 입력 해보자 10.0.2.15로 확인이 되었다.





HostOS의 ip주소는 192.168.64.1이다.





HostOS와 GuestOS의 ip 주소를 확인 했으면 SSH를 접속하기 위한 포트포워딩을 설정 해준다.





HostOS의 IP 와 GuestOS의 IP 그리고 포워딩 해줄 Port 번호를 입력 후 OK를 눌러 저장한다.






포트포워딩에 대한 개요를 설명하자면 일단 Host OS와 Guest OS간 포트를 공유하기 위한 연결된 선이라고 보면 된다.
Host OS와 Guest OS의 22번 포트가 연결되면서 SSH접속이 가능해지게 되는 원리이다.

(이미지에서는 VirtualBox 부분을 제외하였다.)

꼭 동일 포트만 설정 해야되는것은 아니다. 8080:22와 같은 형태로도 설정이 가능하며 이렇게 설정 했을 경우 Host OS에서 SSH접속 시 포트는 8080이 된다. 8080포트를 호출하면 Guest OS의 22번 포트로 연결 되면서 SSH접속이 가능해질 것이다.






포트포워딩 설정이 완료 되었으면 SSH를 통해 VirtualBox의 CentOS에 연결해본다.

(필자는 mRemoteNG를 사용하여 SSH접속 테스트를 진행 했다.)

접속이 잘 되었다. 이제 도커 설치해보도록 하겠다.






Docker 설치



여기까지 오느라 정말 수고 많았다. 이제 대망의 도커 설치파트이다.

먼저 패키지 목록 업데이트를 위해 yum update 명령을 실행하도록 한다.

목록 업데이트가 완료되면 yum install -y docker 명령으로 꿈에 그리던 도커를 설치하도록 하자


# yum update # yum install -y docker

Installed: docker.x86_64 2:1.13.1-88.git07f3374.el7.centos Dependency Installed: PyYAML.x86_64 0:3.10-11.el7 atomic-registries.x86_64 1:1.22.1-26.gitb507039.el7.centos audit-libs-python.x86_64 0:2.8.4-4.el7 checkpolicy.x86_64 0:2.5-8.el7 container-selinux.noarch 2:2.74-1.el7 container-storage-setup.noarch 0:0.11.0-2.git5eaf76c.el7

...

Complete!


설치가 잘 되었다.









Docker : 설치 편

끝.


'Docker' 카테고리의 다른 글

Docker : Dockerfile 실습 편  (0) 2019.03.22
Docker : Dockerfile 편  (0) 2019.03.07
Docker : 이미지 편  (0) 2019.02.22
Docker : 컨테이너 편  (1) 2019.02.15
Docker : 기초 편  (2) 2019.01.16
Comments