Docker란?
IT 소프트웨어인 "Docker”는 Linux® 컨테이너를 만들고 사용할 수 있도록 하는 컨테이너화 기술입니다.
오픈소스 Docker 커뮤니티는 모든 사용자가 무료로 이점을 얻을 수 있도록 이러한 기술을 개선하기 위해 노력하고 있습니다.
Docker Inc.는 Docker 커뮤니티의 활동에 기반을 두고 있으며 Docker 커뮤니티의 보안을 강화하고 개선 사항을 공유하여 커뮤니티를 발전시킵니다. 그리고 엔터프라이즈 고객을 위한 향상되고 강화된 기술을 지원합니다.
Docker를 사용하면 컨테이너를 매우 가벼운 모듈식 가상 머신처럼 다룰 수 있습니다. 또한 컨테이너를 구축, 배포, 복사하고 한 환경에서 다른 환경으로 이동하는 등 유연하게 사용할 수 있어, 애플리케이션을 클라우드에 최적화하도록 지원합니다.
RedHat 공식 홈페이지의 Docker란 무엇일까요? 페이지 발췌
(출처 : https://www.redhat.com/ko/topics/containers/what-is-docker )
시스템이 고성능이 된 만큼 남는 성능을 좀 더 알차게 쓰기 위해 마이크로 서비스를 하거나, Guest OS를 설치해서 사용하게 될 때 생기는 성능 누수 및 번거로움을 줄이기 위해 사용한다고 생각합니다. 최소한 저는요.
Docker는 참 쉽고 간편하며, 누구나 만들 수 있고, 누구나 사용할 수 있습니다.
(참으로 갓갓 도커이시다.)
또한 Docker Hub에는 각 Application의 오피셜 Images들도 업로드되어 있고, Github를 통해서 Dockerfile이나 Docker-Compose 등을 공개하고 있기 때문에 무척이나 쉽고, 간편합니다.
업무 특성상 모니터링 업무가 많다 보니, 각종 모니터링 툴을 깔게 되는데, 이럴 때 드는 현타가 항상 똑같았습니다.
"아.. 언제 MySQL 깔고, 언제 Apache 깔고, 언제 PHP 설정하고 패키지 깔고 다 하냐..."
물론 위의 고민은 Docker를 알기 전에 했던 고민이고, 더 이상 하지 않는 고민들이죠.
Docker를 알게된 후 단순한 Application은 Dockerfile을 만들거나 불러와서 커스터마이징 한 후 빌드해서 이미지로 만들거나, Docker-Compose에서 환경 변수 등을 수정하여 빠르고 간결하게 설치 및 배포를 합니다.
git clone https://github.com/source
docker-compose up -d
이거면 끝이에요. ㄹㅇㄹㄷ가..
잡설도 길었고, Docker에 대한 찬양을 많이 했는데, 이제 Docker와 Docker-Compose를 설치해봅시다.
Docker 설치 방법
1) Docker 설치 (CentOS/Ubuntu 구분 없음, 64비트 이상만 사용 가능)
sudo curl -fsSL get.docker.com -o get-docker.sh
sudo sh get-docker.sh
2) Docker를 사용하려면 sudo 명령어를 사용해야 하는데, 현재 로그인한 계정을 Docker그룹으로 포함시킨 후 재부팅을 합니다.
sudo usermod -aG docker $USER
sudo init 6
3) Docker가 사용자 계정에서 사용 가능한지 확인하고 설치된 버전도 확인합니다.
[centos@elk ~]$ docker --version
Docker version 19.03.1, build 74b1e89
4) 시스템 시작 시 Docker 서비스가 시작되도록 설정합니다. (CentOS/Ubuntu 동일)
sudo systemctl start docker
sudo systemctl enable docker
Docker-Compose는 무엇?
docker를 구축하여 사용하다 보면 볼륨, 포트, 환경 변수 등을 입력하다 보면 매우 긴 줄의 명령어가 완성됩니다.
이는 실수로 인해 컨테이너가 제대로 생성이 안되거나 시작이 안되는 문제가 생길 수 있습니다.
이런 경우를 줄일 수가 있는게, Docker-Compose입니다.
yml 형식을 지원하며, 프로그래밍을 할 줄 몰라도 손쉽게 사용할 수 있는 형식입니다.
1. docker가 설치된 서버에서 아래 명령어를 입력합니다.
내용은 Docker-Compose 설치 및 실행 권한과 심볼릭 링크입니다.
sudo curl -L https://github.com/docker/compose/releases/download/1.24.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
2. 설치 완료 후 버전을 확인합니다.
[centos@elk ~]$ docker-compose --version
docker-compose version 1.24.
자, 그리하여 Docker를 시작할 준비가 완료되었습니다.
참 쉽지 않습니까?
get-docker.sh의 경우 OS 정보를 확인하여, 설치에 필요한 작업을 자동으로 진행합니다.
Docker-Compose 설치도 마찬가지고요.
앞으로도 Docker 관련된 포스팅을 자주 할 생각입니다.
그만큼 쉽고 편리한 도구이니 함께 Docker 하시죠. ㅎㅎ
다음 포스팅에 만나요~