Ubuntu 142017. 1. 21. 17:09



최근 엄청난 인기를 누리고 있는 가상화 머신을 아주 쉽게 제공해주는 도커(Docker)를 맥북에 설치하고 생성해보면서 정리한 내용입니다.


아주 쉽게 가상화 머신을 생성하고 제거하고 관리를 할 수 있어 다양한 OS를 마음것 사용할 수도 있지만, 자신의 원본 PC를 아주 깨끗하게 유지 하면서도 다양한 시도와 테스트를 해볼 수 있는 장점이 있습니다.

더욱이 다른 사람과 공유도 단순히 파일(Dockerfile) 하나만 공유하면 상대방이 바로 같은 셋팅의 머신을 생성할 수 있어 아주 좋습니다.


설치와 셋팅도 정말 간단합니다.

Mac 뿐만 아니라 윈도우, 우분투등에서 사용이 가능하여 호환성도 좋습니다.



도커 사이트

https://docs.docker.com/docker-for-mac/


공식 사이트에서 아주 쉽게 설치부터 사용법까지 소개를 잘 해주고 있습니다.



도커 이미지 허브

https://hub.docker.com/explore/


다양한 도커 이미지들을 찾아 볼 수 있어 직접 가상 머신이 환경셋팅들설치할 필요가 없습니다.




1. 다운로드


도커 사이트에서 맥용 설치파일을 다운로드 받습니다.



2. 설치


다운로드 받은 dmg 파일을 더블클릭하여 앱을 설치하면 기본 설치가 끝납니다.




3. 설치 버젼 확인


Mac의 터미널을 하나 열어서 버젼을 확인을 합니다. 

잘 설치가 되었군요.

> docker --version

Docker version 1.13.0, build 49bf474



4. 도커 파일로 빌드하기


도커 파일(Dockerfile)이 있다면 해당 파일을 통해서 가상머신을 생성할 수 있습니다. 

만약 없다면, 도커 허브에서 원하는 이미지를 찾아서 생성을 할 수도 있습니다.


해당 파일이 있는 디렉토리로 이동하여 아래와 같이 명령어를 입력하면 도커 파일들을 모두 찾아서 이미지로 등록을 해줍니다.


>> docker build -t daesony .

[형식] docker build -t [이미지 이름] [디렉토리]



5. 등록된 도커 이미지 확인하기


이렇게 등록이 되었을 이미지 정보를 볼 수 있습니다.


>> docker images



6. 가상머신 생성하기


이미지가 있으니 그냥 찍어내듯이 원하는 가상머신을 마음것 생성할 수 있게 되었습니다.

이미지로 가상머신을 하나 실행하는 명령어입니다.


>> docker run -t -i -p 8080:8080 --name daesony ubuntu:latest /bin/bash

[형식] docker run -t -i -p [외부포트:내부포트] --name [가상머신이름] [이미지이름] /bin/bash


이렇게 하면 가상머신이 하나 실행이 되면서 바로 가상머신에서 작업이 가능하게 됩니다.



7. 기타


다양한 도커 관리 명령어들 중에서 자주 사용되는 내용을 추렸습니다.


# 실행중인 도커 머신 정보 보기

>> docker ps


# 실행중이 않은 머신을 포함한 정보 보기

>> docker ps -a


# 도커 머신 삭제 하기

>> docker rm -f [container name]


# 도커 이미지 삭제 하기

>> docker rmi [image name]


# 도커 머신 중지하기

>> docker stop [container name]


# 도커 머신 시작하기

>> docker start [container name]


# 도커 머신으로 파일 복사하기

>> docker cp [소스파일] [머신이름:디렉토리]


# 도커 머신으로 부터 파일 가져오기

>> docker cp [머신이름:소스파일] [디렉토리]


# 도커 머신으로 재접속하기

>> docker attach [머신이름]



8. 환경설정


도커 앱의 환경설정으로 가시면,

파일 공유 디렉토리를 추가 변경할 수 있으며 도커에 할당할 cpu, memory 를 지정할 수 있으니 자신의 환경에 맞게 적절히 설정해주도록 합니다.


  











Posted by 대소니

댓글을 달아 주세요

  1. 감사합니다 :)

    2019.04.21 15:55 신고 [ ADDR : EDIT/ DEL : REPLY ]