본문 바로가기

전체 글

(31)
1. [Seminar] 도커 이미지 내부 파일 구조 보기 (ls) 도커 이미지 docker run 이미지이름 ls 도커 컨테이너 생성 이 컨테이너를 이 자리는 원래 이미작 가지고 있는 시작 명령어를 무사하고 클라이언트 및 실행 위한 이미지 여기에 있는 커맨드를 싱행하게 함. ls 커맨드는 현재 디렉토리의 파일 리스트 표출 docker run hello-docker ls ( 오류 ) ※ hello-docker 이미지에는 기본적으로 ls 명령어가 없음 (간단한 문자 출력 용도만으로 사용) 이미지 1) 시작시 실행 될 명령어 모음 2) 파일 스냅샷 (bin, dev, etc ... ) 컨테이너 시작시 실행 될 명령어 ( ls ) 커널 네트워크 CPU RAM 하드 디스크 bin. dev. etc ..
1. [Seminar] Cgroup, 네임스페이스 C Group, 네임스페이스 - 컨테이너와 호스트에서 실행되는 다른 프로세스 사이에 벽을 만드는 리눅스 커널 기능 C Group -> 개별 cpu, 메모리, 네트워크 등 프로세스 그룹의 시스템 리소스 사용량 관리 - 각 컨테이너에 부분적으로 할당 네임스페이스 -> 하나의 시스템에서 프로세스를 격리시킬 수 있는 가상화 기술 ( 경량 프로세스 가상화 기술 ) 컨테이너를 격리 시킬 수 있는 이유 : Cgroup, 네임스페이스 -> 리눅스 환경에서 사용 되어지는 것들인데 사용 할 수 있는 이유는 무엇일까 ?? 일반 Windows, MacOS 사용 가능 이유 리눅스 컨테이너 커널 리눅스 하드웨어 Windows, MacOS 컨테이너 커널 리눅스 VM 윈도우,맥 OS 하드웨어
1. [Seminar] 이미지로 컨테이너 생성 이미지는 응용 프로그램을 실행(컨테이너 생성)하는데 필요한 모든 것을 포함 필요한 것 1. 컨테이너가 시작 될 때 실행되는 명령어 2. 파일 스냅샷 ( 디렉토리나 파일을 카피 한것 ) 이미지를 컨테이너로 만드는 순서 1. 도커 클라이언트에 docker run 입력 2. 도커 이미지에 있는 파일 스냅샷을 컨테이너 하드 디스크에 복사 $ docker run hello-docker 1. 시작시 실행 될 명령어 run hello-docker run hello-docker (1) 2. 설치에 필요한 파일 ( 스냅샷 ) 커널 하드디스크 (2), 네트워크, RAM, CPU
1. [Seminar] 도커, VM 가상화 기술 나오기 전 -> 하이퍼 바이저 기반의 가상화 출현 한대의 서버를 하나의 용도로만 사용 논리적으로 공간을 분할하여 VM이라는 독립적인 가상 환경의 서버 이용 가능 남는 서버 공간 방치 하이퍼 바이저는 호스트 시스템에서 다수의 게스트 OS를 구동할 수 하나의 서버에 하나의 운영체제 있게 하는 소프트웨어, 안정적이나 비효율적 그리고 하드웨어를 가상화하면서 하드웨어와 각각 VM을 모니터링 가능 VM VM ( App1, App2 ) ( OS1 , OS2 ) OS Hypervisor 하이퍼 바이저 Host Operating System 리눅스 커널 Infrastructure 하드웨어 (CPU Core별로 할당) 하이퍼 바이저에 의해 구동되는 VM은 각 VM마다 독립된 가상 하드웨어 자원을 할당 논리적으..
1. [Seminar] 도커 작동 흐름 1. 도커 클라이언트: 도커 CLI에 커멘드를 입력 2. 도커 서버: (도커 Daemon) 그 커맨드를 받아 작업 실행 [1] 도커 클라이언트에 커멘드를 입력하면 도커 서버로 요청을 보냄 $ docker run hello-world [2] 서버에서 hello-world라는 이미지가 이미 로컬에 cache가 되어 있는지 확인 및 실행 없으면 도커 허브에서 확인( 개인 도커 로그인 저장소 ) 그래도 없으면 커맨드에 이미지가 없다고 출력
1. [Seminar] 이미지, 컨테이너 컨테이너, 이미지 정의 컨테이너는 코드와 모든 종속성을 패키지화하여 응용 프로그램이 한 컴퓨팅 환경에서 다른 컴퓨팅 환경으로 빠르고 안정적으로 실행되도록 하는 소프트웨어의 표준 단위 -> 간단하고 편리하게 프로그램을 실행시켜주는 것으로 정의 컨테이너 이미지는 코드, 런타임, 시스템 도구, 시스템 라이브러리 및 설정과 같은 응용 프로그램을 실행하는 데 필요한 모든 것을 포함하는 가볍고 독립적이며 실행 가능한 소프트웨어 패키지 또한 컨테이너 이미지는 런타임에 컨테이너가 되고 도커 컨테이너의 경우 도커 엔진에서 실행될 때 이미지가 컨테이너가 된다. 컨테이너는 소프트웨어를 환경으로부터 격리시키고 개발과 OS차이에도 불구하고 균일하게 작동하도록 보장 ※ 정리 도커 이미지 -----------------------..
1. [Seminar] 도커란? 일반적인 서버 설치 1 . Installer 다운 -> 2. Installer 실행 -> 3. 프로그램 설치 오류 / 완료 -> 서버, 패키지 버전, 운영체제 등 여러가지 설치 방법이 다르고 복잡하고.. 설치 하는 과정에 많은 에러 발생 # 일반적인 redis 설치 redis.io/download Redis *Download Redis uses a standard practice for its versioning: major.minor.patchlevel. An even minor marks a stable release, like 1.2, 2.0, 2.2, 2.4, 2.6, 2.8. Odd minors are used for unstable releases, for example 2.9.x releas..