Bare Metal 시스템에서 각 os 위에 여러 어플리케이션들을 운영하는 것이 출발점이였음h/w 성능이 좋아지고 싸지면서 가상 컴퓨터에서 필요한 어플리케이션들을 운영하는 것으로 발전 -> 가상화 플랫폼시간이 지나면서 FE, BE 어플리케이션들을 client들의 사용량
최소 사양 CPU : 2core Memory : 2GB 이상 확인법 : Win+R -> dxdiag Docker를 사용하는 방식 윈도우에 virtualBox(Hypervisor) 설치 -> 네트워크 구성 -> VM(가상머신) 만들기 VM에 Ubuntu 설치하고 기본
Container는 하나의 Application 프로세스각각 완전히 독립적임docker Demon이 동작되고 있는 Linux Kernel이 있는 시스템\-> container를 실행할 수 있는 플랫폼을 구성해놓았다는 뜻\-> kernel은 하나이지만 docker pro
1\. Docker Hub에서 컨테이너 이미지 검색2\. 컨테이너 이미지 다운로드 후 image layer 보기3\. 컨테이너 실행하고 확인해보기docker image의 레이어들이 저장되어 있는 곳docker image 확인하고 다운로드하기docker run --nam
개발한 어플리케이션(실행파일)과 운영환경이 모두 들어있는 독립된 공간을 컨테이너로 구성함MSA(Micro Service Architecture) 환경의 polyglot 어플리케이션 운영\-> 각각의 application service에 맞춰 container를 만들어냄
1. nodeJS 어플리케이션 컨테이너 만들기 우분투 기반의 웹 서버 컨테이너 만들기 만들어놓은 컨테이너 배포하기 nodeJS 어플리케이션 컨테이너 만들기 우분투 기반의 웹 서버 컨테이너 만들기 만들어놓은 컨테이너 image 배포하기 docker hub에 먼저
1. 컨테이너 보관 창고(Registry)란? docker hub(registry) 사용 Private Registry 구축 컨테이너 보관 창고란? Registry : 컨테이너 이미지를 저장하는 저장소 Docker Hub : hub.docker.com Private
docker hub에서 검색하기(NAME or DESCRIPTION에서 검색)docker pull에서 image pull하고 확인하기docker 개인 repository에 push 하기외부 네트워크에서 접근x, 사내에서만 접근o 환경에서 registry를 운영해야할 때
1. 컨테이너 이미지를 어떻게 사용하는가 컨테이너를 실행하고 종료하는 명령어 동작중인 컨테이너를 관리하는 명령어 컨테이너 이미지를 어떻게 사용하는가? 컨테이너 라이프 사이클 docker hub에서 docker pull 이미지이름:태그를 통해 image 다운로드 doc
컨테이너 이미지 관리 명령어 사용하기 컨테이너 실행 및 운영하기 컨테이너 종료하기 실습 활용 아파치 웹서버 컨테이너 이미지를 검색한 후 다운로드(search, create) 다운로드한 아파치 웹서버를 백그라운드 실행(detach), 컨테이너 이름: web으로 동작(r
하드웨어 리소스 제한 및 컨테이너 모니터링 컨테이너 H/W 리소스 제한 기본적으로 컨테이너는 host h/w 리소스의 사용 제한을 받지 않음 그래서 제한을 두지 않으면 불공정하게 리소스 분배가 될 수 있음 컨테이너가 필요로 하는 만큼의 리소스만 할당해야함!!! Do
Linux 부하 테스트 program - Stress stress container 생성 컨테이너 빌드 : 부하 테스트 프로그램 stress를 설치하고 동작시키는 컨테이너 빌드 CPU 부하 테스트 : 2개 cpu core를 100% 사용하도록 부하 발생 : stres
컨테이너 이미지는 readonly이미지를 컨테이너로 프로세스화해도 ro 속성컨테이너에 추가되는 데이터들은 별도의 RW(read-write) 레이어에 저장그렇다면 readonly Layer와 Read-Write Layer가 어떻게 하나인 것처럼 보이는가? Union Fi
1. mysql DB data 영구 보존 2. 웹데이터 readonly 서비스로 지원 3. 컨테이너간 데이터 공유 mysql DB data 영구보존하기 $ docker run -d -v /dbdata:/var/lib/mysql -e MYSQL_PASSWORD=pas
Container Network Modeldocker0 virtual ethernet bridge : 172.17.0.0/16L2 통신기반container 생성 시 veth 인터페이스 생성(sandbox)모든 컨테이너는 외부 통신을 docker0를 통해 진행contai
$ ip addr : docker0 ip 확인$ brctl show : bridge 확인172.17.0.2 부터 순차적으로 할당되는 것을 볼 수 있음c1 컨테이너가 외부 통신이 잘 되는 모습docker0(172.17.0.1)을 통해서 외부로 통신하게됨 -> docker