Docker

Docker 환경 구성 (1)

Developer trainee_J ^~^ 2023. 4. 3. 19:25

Docker는 애플리케이션을 신속하게 구축, 실행을 위해 설계된 소프트웨어 가상화 컨테이너 플랫폼이며 컨테이너를 다른 환경으로 이동하는 등 유연하게 사용가능하다. Docker를 사용하면서 중요하게 알아야 할 항목은 이미지와 컨테이너이다. 



1. Docker 이미지란?

Docker 컨테이너를 만드는데 필요한 코드, 시스템라이브러리, 설정 등을 담아둔 소프트웨어 패키지이다. 

쉽게 설명하자면 컨테이너를 만드는데 필요한 설계도정도로 이해하면될 것 같다.



2. Docker 컨테이너란?

코드와 모든 종속성을 패키지화하여 애플리케이션이 한 환경에서 독립적인 다른 환경으로 빠르고 안정적으로 실행될 수 있게 해주는 소프트웨어 장치이다. Docker 이미지라는 설계도로 만들어진 독립적인 사용자 공간이다. 



3. Docker를 사용하는 이유 



프레임워크, 도구간의 복잡성 최소화



처음 개발을 할 때는 본인의 Local 환경에서 마구잡이 식으로 환경을 구축했었는데 이제 와서 생각해보면 정말 끔찍한 상황이다. Local 환경은 실제 운영되는 환경이 아니다보니 아무 라이브러리를 설치해도 어떤 영향을 끼치는지 체감하기 어려웠다. 하지만 운영되는 환경에서는 기존 라이브러리에 미치는 영향을 고려하지 않고 무지성 설치를 강행하면 에러코드를 수정하느라 일주일내내 야근을 해야할 수도 있다. 하지만 Docker를 사용하면 본인이 사용할 라이브러리만 포함된 가상 컨테이너 환경을 구축할 수 있고, 라이브러리 설치과정에서 종속성에 문제가 발생하면  언제든지 컨테이너를 새로 생성하여 새로운 환경에서 다시 할 수 있다는 강점이 있다.  



개발/운영 환경의 통합



개발 Docker 컨테이너에서 라이브러리 다운로드, Airflow 등 플랫폼을 설치 했을 경우 운영으로 배포하는 과정은 매우 간단하다. 왜냐하면 해당 컨테이너 환경을 그대로 이미지로 만들 수 있기 때문이다. 기본적인 베이스 이미지는https://hub.docker.com/


Docker Hub Container Image Library | App Containerization

Deliver your business through Docker Hub Package and publish apps and plugins as containers in Docker Hub for easy download and deployment by millions of Docker users worldwide.

hub.docker.com
에서 다운로드 받을 수 있으며 기본적인 베이스 이미지 layer에 본인이 설치한 파일이 추가되거나 수정되면 새로운 layer가 생성된다. 



Docker 사용하기



Windows환경에서 Docker를 사용하기 위해서는 Docker Desktop을 설치하거나 Linux 운영체제 OS를 사용해야한다. 

따로 서버가 구성된경우 Docker를 수동설치하여 진행하겠지만 현재는 Windows환경밖에 없기 때문에 Docker Desktop
Docker Desktop을 이용하여 사용해볼 예정이다.