문성준의 단단해지기

2017.08.03 docker(도커) 특강 과 나의 생각 정리 본문

잡다한 이야기

2017.08.03 docker(도커) 특강 과 나의 생각 정리

단단한 문성준 문성준 2017.08.05 15:35



강사님 구글정보 나의생각


docker 특강(hub.docker.com)


docker 란 무엇인가?


도커는 컨테이너 기반의 오픈소스 가상화 플랫폼이다.


처음 강사님께 "여러분이 생각하시는 그 컨테이너가 맞습니다" 라고 했을때는 


긴가민가 했지만 google에서 검색을 해보니 그말이 진짜 맞았다.


말 그대로 배에 네모난 화물 수송용 박스이다. 각각의 컨테이너에는 서로 각기다른 다양한 화물을 적재할 수 있고


규격화 되어 있지만 컨테이너를 통해 손쉽게 옮길 수 있다.


서버에서 이야기하는 컨테이너 또한 다양한 프로그램, 실행환경을 컨테이너로 추상화 하고 동일한 인터페이스를 제공하여


프로그램의 배포 및 관리를 단순하게 하는 것이다.


그 어떤 프로그램이라도 컨테이너로 추상화 하여 어디든지 실행 할 수 있게 하는 것


그것이 도커(docker)라고 합니다.


구글은 모든 서비스들이 컨테이너로 동작하고 매주 20억 개 의 컨테이너를 구동한다고 합니다.


예전에 인터넷을 정보의 바다라고 했는데 그말이 대학생이 되어 소프트웨어학과에서 공부를하다보니 


이제서야 제대로 이해가 되네요.



Docker 는 컨테이너를 제공하는 소프트웨어 기술입니다.


윈도우 및 리눅스 에서 운영체제 수준의 가상화를 추상화 하고 자동화 하는 추가 계층을 제공합니다.


cgroups 및 커널 네임 스페이스와 같은 Linux 커널의 리소스 격리기능과 OverlayFs 및 기타와 같은 공용 가능 파일 시스템을


사용하여 독립적인 컨테이너를 단일 Linux 인스턴스 내에서 실행할 수 있게하여 가상컴퓨터를 시작하고 유지관리하는 오버헤드 입니다.


리눅스 커널의 네임 스페이스 지원은 주로 프로세스 트리, 네트워크 , 사용자 ID 및 마운트 된 파일 시스템을 포함하여 응용 프로그램의


운영 환경에 대한 뷰를 분리 하는 반면 커널의 cgroup 은 CPU , 메모리 , 블록 ,I/O , 네트워크 버전으로 되어 있습니다.


Docker는 Iibvirt, LXC(리눅스 컨테이너s) 및 systemd-nspawn을 통해 추상화 된 가상화 인터페이스를 사용하는 것 이외에도 Linux 커널이


제공하는 가상화 기능을 직접 사용하는 자체 방식으로 libcontainer 라이브러리를 포함합니다.




액션이 Docker 기본 이미지에 대해 수행되면 유니온 파일 시스템 레이어가 생성되고 문서화 되므로 각 레이어는 액션을 


다시 생성하는 방법을 완벽하게 설명한다.


이 전략을 사용하면 레이어 업데이트만 전파해야하므로 Docker의 경량이미지를 사용할 수 있다.


Docker는 다른 인터페이스를 사용하여 Linux 커널 가상화 기능에 액세스 할 수 있다.


Docker 는 높은 수준의 API 를 구현하여 프로세스를 독립적으로 실행하는 경량 컨테이너를 제공한다.


Docker 컨테이너는 Linux 커널 (주로 cgroup 및 네임 스페이스) 에서 제공하는 기능을 기반으로 구축되었으므로 가상 시스템과 달리


별동의 운영체제게 필요하거나 포함되지 않다.


그래서 libcontainer 라이브러리를 직접 사용하거나 libvirt, LXC (Linux Containers) 또는 systemd-nspawn을 통해 간접적으로 Linux 커널


의 가상화 기능에 액세스합니다.


그리고 Docker 컨테이너는 매우 가볍기 때문에 단일 서버 또는 가상 컴퓨터에서 여러 컨테이너를 동시에 실행할 수 있다.


Docker 를 사용하여 컨테이너를 만들고 관리하면 여러 응용 프로그램 , 작업자 작업 및 기타 프로세스가 단일 실제 컴퓨터 또는 여러 가상


컴퓨터에서 자동으로 실행될 수 있으므로 고도로 분산 된 시스템을 간단하게 만들 수 있다.


Docker는 작업 또는 작업 부하 큐 및 기타 분산 시스템의 생성 및 운영을 단순화 한다.


그리고 다음은 강의 내용입니다.


마이크로서비스 , 클라우드 ,등등


한 해가 바뀔때마다 트렌드가 바뀌고... IT가 변화한다.


4차 산업혁명(디지털 디스트럽션)


이 부분은 저번 공개SW대회에서도 들은 이야기 이다.


앞으로 오픈소스와 같이 더 쉽고 더 간편하게 그리고 더 많이 담을 수 있는 것들이


4차 산업혁명의 키워드 이자 나아갈 방향인 것 같다.



DevOps(디벨로퍼팀과 오퍼레이션팀이 같이있다) , Microservices , Containers , Cloud


요즘은 에자일 개발 방법론을 함


요즘 실무에 관해서는 에자일 방법론에 대해서 설명해 주셨다.



hub.docker.com 에 가면 도커에 있는 모든 이미지를 다운받을 수 있다.



why docker is hot - its simple , devs love it


왜 도커가 핫하고 지금 모든 관심이 있는지는 간단하다!


쉽고~ 개발자들이 좋아하니까!


Dev/Test of Legacy Apps


New App Dev


Code Agility, CI/CD pipeline, DevOps


Adoption of Open Source(새로운 기술을 접할때 굉장히 빠르게 접근함)


Microservices & Cloud Native Apps




IT 필드에서 도커가 핫한 기술임 (컨테이너 , 도커) 관심을 가지고 

공부를 해볼 것!!


마지막으로 IT계열로 취직을 하거나 관심이 있다면 Docker가 핫한 기술이니 관심을 가지라는 말씀으로 


끝을 내주셧다.


그래서 집에오자마자 노트북을 키고 Dokcer에대해 원리와 기본에대해서 잠시 공부를 해 보았다.


나아가 Docker로 어떤 프로그램을 설치할 지는 아직 정해지지 않았지만 Docker로 프로그램을 설치해서


써보도록 해보겠다.



신고
0 Comments
댓글쓰기 폼