우분투 이미지에 Dockerfile 입력 후 수행
FROM ubuntu:latest MAINTAINER myeongho lee <sooabia22@sptek.co.kr> RUN apt-get update RUN apt-get install -y nano ENV TERM=xterm |
docker build --tag=ubuntu_nano . docker images docker history ubuntu_nano (이미지 변경사항 확인) |
update → nano설치 → 환경변수 설정된 이미지가 생성됩니다.
도커에서 리눅스 이미지를 기반으로 실행한 컨테이너는 일반 리눅스와 몇가지 차이를 만듭니다. 가장 큰 차이는 apt-get update를 반드시 해줘야 한다는 것입니다. 이는 패키지를 우분투 저장소에서 직접받는 것이 아니라 도커에서 리눅스 패키지를 도커기반의 리눅스에서 실행 하도록 수정한 패키지를 받는 다는 의미 인데요. 대부분의 경우는 큰 문제가 없지만 도커 기반의 환경에서 돌아가도록 수정해야 하는 경우들이 있다는 것입니다. 가장큰 타이는 도커 기반의 이미지들은 핵심패키지만 설치한 것들이라 표준이미지들과 다르다는 것입니다. 예를 들면 nano와 같은 기본 에디터가 도커기반 우분투에는 설치되어 있지 않습니다. 또한 ifconfig를 조회하는 net-tools와 같은 패키지도 설치되어 있지 않습니다. 그래서 우분투 서버 ios파일은 650MB정도의 크기지만 도커 우분투 서버 이미지는 130MB남짓합니다. 필요한 패키지는 추가로 설치해서 사용하라는 것이죠. 그리고 서비스(service) 자동실행 구조가 달라 대부분의 서버를 시작/종료/재시작 하는 방법이 다릅니다. 이를 보완하기 위해 SSH의 경우는 수동(매뉴얼)로 직접 서버프로그램을 옵션을 주고 실행시켜줘야 합니다. 그리고 .profile이나 .bashrc 가 시스템 실행시 자동으로 수행되지 않습니다. 그래서 필요하다면 Dockerfile에 설정을 해줘야 컨테이너 생성시 설정이 가능합니다. 이런 점들을 고려해야 도커를 이해하고 사용하는 것이 좀 더 편리할 수 있습니다. |