Docker: Ubuntu 16.04에서의 설치 및 기본 사용법
이 튜토리얼은 다음 OS 버전에 대해 존재합니다.
- Ubuntu 15.04(Vivid Vervet)
이 페이지에서
- Docker에 대해 알아야 할 사항\n
- 도커 이미지
- Docker 컨테이너
- 도커 레지스트리
Docker는 개발자와 시스템 관리자가 어디에서나 경량 컨테이너로 애플리케이션을 빌드, 패키징 및 실행할 수 있는 개방형 플랫폼을 제공하는 오픈 소스 프로젝트입니다. Docker는 소프트웨어 컨테이너 내부의 애플리케이션 배포를 자동화합니다. Docker 개발은 기업용 PaaS(Platform as a Service)인 dotCloud의 내부 프로젝트로 Solomon Hykes에 의해 시작되었으며, 소프트웨어는 이제 docker 커뮤니티와 Docker Inc에서 유지 관리됩니다. Docker에 대한 자세한 내용은 https: 문서에서 확인할 수 있습니다. //docs.docker.com/.
Docker를 설치하려면 64비트 아키텍처가 필요하며 Linux 커널은 3.10 이상이어야 합니다. 여기서는 4.4.0 커널 버전과 함께 Ubuntu 16.04를 사용합니다.
도커에 대해 알아야 할 사항
다음은 도커 세계에서 알아야 할 기본 용어입니다.
도커 이미지
Docker 이미지는 Docker 컨테이너의 기본 템플릿입니다. 이미지에는 일반적으로 쉽게 설치되는 OS 및 애플리케이션이 포함됩니다. Docker 이미지는 컨테이너를 실행하는 데 사용되며 Docker Hub https://hub.docker.com/에 설치된 다양한 운영 체제 및 소프트웨어와 함께 많은 이미지를 찾을 수 있습니다.
도커 컨테이너
Docker 컨테이너는 Docker 이미지 위에서 실행되는 읽고 쓸 수 있는 이미지입니다. Docker는 통합 파일 시스템을 컨테이너의 백엔드로 사용하고 있으며 컨테이너에서 변경된 사항은 기본 이미지 위의 새 레이어에 저장됩니다. 컨테이너는 애플리케이션을 설치하는 계층입니다. 호스트 시스템에서 격리되어 실행되는 각 컨테이너는 안전한 애플리케이션 플랫폼을 제공합니다.
도커 레지스트리
Docker 레지스트리는 Docker 이미지의 저장소입니다. 공용 및 개인 저장소를 제공합니다. 공용 Docker 레지스트리를 Docker 허브라고 합니다. 여기서 우리는 우리 자신의 이미지를 밀고 당길 수 있습니다.
우분투 16.04에 도커 설치
이 섹션에서는 docker를 설치하는 방법을 안내합니다. 소프트웨어를 설치하기 전에 커널 버전과 OS 아키텍처를 확인하십시오. 다음 명령은 루트 사용자로 실행해야 합니다. 이 명령을 실행하여 Ubuntu 시스템의 루트가 되십시오.
sudo -s
그런 다음 uname -a를 실행하여 현재 실행 중인 Linux 커널의 버전을 확인합니다.
uname -a
내가 사용하고 있는 커널 버전이 64비트 커널(x86_64)이 포함된 4.4.0임을 알 수 있습니다.
Ubuntu 버전을 확인하려면 다음을 실행하십시오.
cat /etc/lsb-release
이 명령은 Ubuntu 버전이 16.04임을 보여줍니다.
새 소프트웨어를 설치하기 전에 Ubuntu를 업데이트하는 것이 좋습니다. 다음 명령을 실행하여 Ubuntu 리포지토리에서 최신 업데이트를 가져와 설치합니다.
이제 apt 명령으로 도커를 설치합니다.
apt-get install -y docker.io
설치가 완료될 때까지 기다린 다음 systemctl 명령어로 Docker를 시작할 수 있습니다.
systemctl start docker
시스템 부팅 시 도커가 실행되도록 활성화:
systemctl enable docker
도커 버전을 확인할 수도 있습니다.
docker version
이제 도커가 시스템에 설치되었습니다. Docker 레지스트리에서 Docker 이미지를 다운로드하여 컨테이너 만들기를 시작할 수 있습니다.
도커의 기본 사용법
이 섹션에서는 일반적으로 사용되는 docker 명령어 옵션을 보여드리겠습니다. 예를 들어 도커 이미지를 다운로드하는 방법, 컨테이너를 빌드하는 방법 및 컨테이너에 액세스하는 방법.
새 컨테이너를 만들려면 먼저 OS가 포함된 기본 이미지를 선택해야 합니다. 우분투 또는 centos 또는 다른. docker search 명령어를 사용하여 기본 이미지를 검색할 수 있습니다.
docker search ubuntu
이 명령은 모든 우분투 이미지를 보여줍니다. docker search centos 등을 직접 시도해 볼 수 있습니다.
이제 기본 이미지를 서버에 다운로드할 시간입니다. 다음 명령어를 사용하세요.
docker pull ubuntu
docker pull imagename 명령은 docker registry/DockerHub에서 서버로 이미지를 다운로드합니다.
이제 다음 명령을 사용하여 다운로드한 모든 이미지를 볼 수 있습니다.
docker images
Ubuntu 이미지는 DockerHub/Docker Registry에서 다운로드했습니다. 다음 단계는 해당 이미지에서 컨테이너를 만드는 것입니다.
컨테이너를 생성하려면 docker create 또는 docker run을 사용할 수 있습니다.
docker create ubuntu:16.04
docker create 명령은 새 컨테이너를 생성하지만 시작하지는 않습니다. 이제 실행 명령을 사용할 수 있습니다.
docker run -i -t ubuntu:16.04 /bin/bash
이 명령어는 ubuntu 16.04 이미지를 기반으로 컨테이너를 생성 및 실행하고 컨테이너 내에서 /bin/bash 명령을 실행합니다. 이 명령어를 실행하면 자동으로 컨테이너 내부에 있게 됩니다.
컨테이너는 exit 명령으로 나가면 중지됩니다. 컨테이너를 백그라운드에서 실행하려면 명령에 -d 옵션을 추가하기만 하면 됩니다.
docker run -i -t -d ubuntu:16.04 /bin/sh -c "while true; do echo hello world; sleep 1; done"
/bin/sh -c "while true; do echo hello world; sleep 1; done" 이것은 "hello word"를 영원히 반향시키는 bash 스크립트입니다.
이제 다음 명령어를 사용하여 백그라운드에서 실행 중인 컨테이너를 확인할 수 있습니다.
docker ps
또는 해당 bash 명령의 로그 결과를 보려면 다음 명령을 사용할 수 있습니다.
docker logs NAMES/ContainerID
백그라운드 모드에서 실행되는 컨테이너의 셸에 어떻게 액세스할 수 있습니까? 이 명령은 컨테이너의 셸에 연결합니다.
docker exec -i -t NAMES/ContainerID /bin/bash
호스트 이름과 컨테이너 ID가 동일한 것을 볼 수 있습니다. 이는 컨테이너 셸 내부에 있음을 의미합니다. 해당 셸에서 "exit"를 입력하면 해당 셸에서 나가지만 컨테이너는 계속 실행됩니다.
자주 사용하게 될 또 다른 명령은 다음과 같습니다.
docker stop NAME/ContainerID
이렇게 하면 컨테이너를 삭제하지 않고 중지하므로 다음 명령으로 다시 시작할 수 있습니다.
docker start NAME/ContainerID
컨테이너를 제거하려면 먼저 중지한 다음 다음 명령을 사용하여 제거합니다.
docker rm NAME/ContainerID
이것은 Ubuntu에서 Docker의 설치 및 기본 사용법에 대한 간단한 소개일 뿐입니다. 여기에서 자세한 Docker 문서 페이지를 찾을 수 있습니다.
Docker에 대한 자세한 소개는 이 Howtoforge 가이드 시리즈(https://www.howtoforge.com/tutorial/how-to-use-docker-introduction/)에서 확인할 수 있습니다.
도커 파일을 만들려면 여기를 보세요.
결론
Docker는 개발자가 애플리케이션을 배포하고 시스템 관리자가 안전한 가상 컨테이너 환경에서 애플리케이션을 관리할 수 있도록 도와주는 오픈소스 컨테이너 가상화 플랫폼입니다. Docker는 Intel/AMD 64비트 아키텍처에서 실행되며 커널은 3.10 버전 이상이어야 합니다. dDocker를 사용하면 컨테이너 내에서 애플리케이션을 빌드하고 실행한 다음 걱정 없이 Docker를 실행하는 다른 시스템으로 컨테이너를 이동할 수 있습니다.