Docker - 1 설치 및 기본 커맨드

Docker - 1 설치 및 기본 커맨드

왜 써야하는지, 어디에 써야하는지, 어떤 이점이 있는지는 너무 많은 곳에 있기에 바로 설치와 테스트를 진행하겠습니다.

기본적으로 우분투 베이스로 진행하겠습니다. 테스트를 진행한 우분투는 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/ljh0915/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에서 빌드가 가능합니다.

from http://bigbrother84.tistory.com/24 by ccl(A) rewrite - 2021-06-02 17:26:11