왜 써야하는지, 어디에 써야하는지, 어떤 이점이 있는지는 너무 많은 곳에 있기에 바로 설치와 테스트를 진행하겠습니다.
기본적으로 우분투 베이스로 진행하겠습니다. 테스트를 진행한 우분투는 18.04 버전입니다.
설치
$ sudo apt-get install docker.io
$ sudo ln -sf /usr/bin/docker.io /usr/local/bin/docker
설치 후 테스트를 하기 위해 anaconda3를 설치해보도록 하겠습니다.
그를 위해서 docker repository에 anaconda3를 검색합니다.
$ docker search anaconda3
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
continuumio/anaconda3 Powerful and flexible python distribution 526 [OK]
okwrtdsh/anaconda3 Anaconda3, Jupyter Notebook, OpenCV3, Tensor… 34 [OK]
fzinfz/anaconda3 multi-kernel jupyter(py 3.7+/2.7.15 & bash) … 4
marketdial/anaconda3-uwsgi-nginx-flask A custimized image based on anaconda3 with u… 2
quantrocket/anaconda3-uwsgi Learn more at https://www.quantrocket.com 1 [OK]
vineeth52/anaconda3-tf-keras Docker image for ubuntu-latest + anaconda3 +… 1
kunitaya/anaconda3 Anaconda3 on CentOS 1 [OK]
satbala1/anaconda3 Anaconda3 install with Jupyter Notebook 1
alleninstitute/anaconda3_neuron_1370 1
xychelsea/anaconda3 Anaconda 3 base containers, including with N… 1
hdfeos/anaconda3 Anaconda3 for http://hdfeos.org/zoo 0 [OK]
byeong0/anaconda3 anaconda3 0
tactileentertainment/anaconda3-onbuild An onbuild image to deploy anaconda3 based p… 0 [OK]
ryomazda/anaconda3 anaconda3 on ubuntu18.04 with jupyter nbexte… 0
lresende/anaconda3 0
shimtom/anaconda3-ubuntu anaconda3 in ubuntu 0 [OK]
yan047/anaconda3 Anaconda3-4.2.0 on top of ubuntu 16.04 0 [OK]
svekre/anaconda3 Test Anaconda3 for ProDi Bioinf Workgroup 0
nabladesignlabs/anaconda3-ubuntu docker for anaconda3-ubuntu 0 [OK]
ssusb/anaconda3 0
hoto17296/anaconda3-ja Anaconda 3 Image for Japanese. 0 [OK]
xuliwei1216/anaconda37_tf23_flink11 0
shotat/anaconda3-xgboost-docker anaconda3 & xgboost 0 [OK]
vshulkin/anaconda3 anaconda3 4.5.1 with python 2.7 and python 3… 0 [OK]
dieudonne/anaconda3 Jupyter notebook based on continuumio/anacon… 0
이중에서 별을 많이 받은 continuumio/anaconda3을 다운로드 하도록 하겠습니다.
$ docker pull continuumio/anaconda3
Using default tag: latest
latest: Pulling from continuumio/anaconda3
69692152171a: Already exists
99ee0a02a284: Pull complete
Digest: sha256:037174b951b838bb47aaf6f527d3c7f996dc4445415bfc0ace391820df4c2d5b
Status: Downloaded newer image for continuumio/anaconda3:latest
docker.io/continuumio/anaconda3:latest
설치 완료 후 docker run을 통해서 컨테이너를 실행해보도록 하겠습니다.
$ docker run -it --rm --name anaconda3 -v /home/myhome/docker_temp/:/docker_temp continuumio/anaconda3 bin/bash
파라메터들의 의미는 아래와 같다.
-it : bash 쉘에 접근하기 위한 커센트입니다.
--rm : docker shell에서 exit로 빠져나올때 리소스들을 자동으로 정리해줍니다.
--name : 별명을 만들어서 나중에 다시 연결하기 쉽게 만들어줍니다.
-v : 도커 내부에서 외부 폴더 연결을 하게 해줍니다. -v external folder:internal folder 형식으로 구성됩니다.
이런식으로 컨테이너를 작동하게 되면 아래와 같이 docker shell로 들어가게 됩니다.
(base) root@4096c6b37cc7:/#
이후 ls를 치게 되면 아래와 같이 나옵니다.
bin boot dev docker_temp etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
중간에 보면 docker_temp가 나오게 되는데 docker 컨테이너가 중지되면 데이터들이 지워지게 되는데 해당 폴더로 데이터들을
남겨 놓을 수 있습니다.
이후 해당 폴더에서 데이터 편집 후 docker에서 빌드가 가능합니다.