study/docker

엉터리 정리 - 도커

올스왑 2021. 6. 2. 22:25

노마드 코더님의 5분 영상을 보고 적는 글이다. 현업에서 도커를 사용하기 때문에 공부를 해야할 것 같다.

 

도커는 environment disparity 문제를 해결한다. -> 코드의 개발 환경이 맞지 않은 상황을 해결할 수 있다. 다른 머신에서도 같은 환경을 구성해주는 방법으로 해결한다.

사용방법.

개발 환경과 서버에 각각 도커를 설치한다. 그리고 docker파일을 생성한다. 이 파일에 구현하고 싶은 환경을 설정한다.(우분투, 파이썬 깃, ...)
docker는 이 파일을 읽고 필요한 것들을 다운로드 받고, 해당 설정한 환경과 같은 버츄얼 컨테이너를 컴퓨터에 만든다.
그래서 개발 컴퓨터에서 서버로 코드를 업로드할 때(docker 파일과 함께) 잘 작동한다.

docker 컨테이너들은 독립적인 것들이다. 따라서 한개의 서버에 많은 컨테이너를 갖을 수 있다. ex) 파이썬-장고 컨테이너, 자바 컨테이너, ...
도커는 이런 다양한 컨테이너들을 관리할 수 있다. 예를 들어 자바 앱이 인기가 많아지면, 트래픽이 늘고, 자바 컨테이너를 늘릴 수 있고, 다시 트래픽을 줄면 자바 컨테이너 수를 줄일 수 있다.

-> 즉 도커 덕분에 매번 새로운 서비스를 만들 때마다 새로운 서버를 사고 설정할 필요가 없다. 원할 때마다 도커를 통해 새로운 환경을 생성할 수 있다.

* 하나의 같은 서버에서 각기 다른 환경의 컨테이너를 설정할 수 있다.
* 컨테이너들은 분리.독립 되어 있다.

정리
1. 원하는 개발 환경을 파일에 저장하면, docker는 이것으로 내가 원하는 어떤 머신에든 해당 환경을 시뮬레이션 해준다.
2. 이런 환경들은 각기 독립적으로 존재하기 때문에, 원하는 환경들을 모듈식으로 관리 가능하다.