쿠버네티스란? 도커 컨테이너, 스웜, 컴포즈와 같은 개념을 모두 사용 가능하다. 사실상 표준으로 사용되는 컨테이너 오케스트레이션 도구이다. 클라우드 환경에 적합한 오픈소스를 관리하는 Cloud Native(CNCF - 오픈소스 단체)에 속해있다. containerd, 프로메테우스 등이 CNCF 소속 ...
시작하세요! 도커 / 쿠버네티스 4장 도커 컴포즈
: 필요한 컨테이너들의 설정을 하나의 파일로 구성해 한번에 띄우도록 하는 것 특징 도커에 내장되어있지 않아 별도로 설치해야한다. 생산성: 하나의 서비스가 여러개의 컨테이너로 구성되어있을 때 개발 환경을 위해 하나하나 띄우는 것은 생산성을 저하시킨다. 컴포즈를 통해 이러한 생상성 저하를 막을 수 있다. Dockerfile을 run할때...
시작하세요! 도커 / 쿠버네티스 3장 도커 스웜
도커 서버 클러스터링의 이점 : 새로운 컨테이너를 할당, 발견 작업, 스케줄링과 LB, HA 보장 등 도커 스웜이란? : 도커 서버 클러스터링 중 하나. 배포된 컨테이너들 관리를 자동화하기 때문에 컨테이너 오케스트레이션이라고도 불린다. 스웜 클래식: 단일 접근점에 초점. 도커 ver 1.6~ 사용가능하나, 공식문서에 의하면 레거시이...
시작하세요! 도커 / 쿠버네티스 2장 도커 엔진 - 4. 도커 데몬
도커 클라이언트와 도커 데몬 도커 클라이언트: Mac 기준 /usr/local/bin/docker, 리눅스 기준 /usr/bin/docker에 존재. 도커데몬의 API를 호출함으로써 유저가 CLI로 도커를 이용할 수 있도록 한다. /var/run/docker.sock Unix 소켓을 이용한다. 도커 서버(데몬 - dockerd): /us...
시작하세요! 도커 / 쿠버네티스 2장 도커 엔진 - 3. Dockerfile
: 설치할 패키지, 소스코드, 실행해야할 명령어 등을 Dockerfile에 기록해놓고 해당 파일을 빌드해 도커 이미지를 만든다. CI/CD 도구를 이용해 자동화하기에도 편리하다. 빌드 과정에 필요한 작업들을 명확하게 명시할 수 있는 것도 장점 중 하나 인 것 같다. docker build -t imageName 으로 실행한다. ...
메인 컨테이너 종료 시 사이드카 컨테이너 종료하기
: 파드 내 메인 컨테이너가 종료하는 경우 사이드카도 종료할 수 있도록 Lifecycle을 맞춰주는 방법 파드에 멀티 컨테이너를 띄우는 경우, 메인 컨테이너가 종료되면 sidecar 또한 더이상 필요 없어지는 경우가 있다.(보통 로그용 컨테이너) 특히나 cronjob의 경우, 사이드카가 종료되지 않으면 job이 compl...
시작하세요! 도커 / 쿠버네티스 2장 도커 엔진 - 2. 도커 이미지
: 모든 도커 컨테이너는 읽기전용인 도커 이미지를 기반으로 생성된다. run, create, pull 명령어를 수행하면 가장 먼저 호스트 머신에서 해당 이미지를 찾고, 없으면 도커 허브에서 검색한 뒤 내려받는다. docker search {image} 로 검색도 가능하다. 누구나 배포할 수 있다. 이미지 중에서도 dock...
시작하세요! 도커 / 쿠버네티스 2장 도커 엔진 - 1. 도커 컨테이너
도커 이미지와 컨테이너 : 가장 기본 단위이자, 도커 엔진의 핵심 두가지. 이미지: 여러 계층으로 된 바이너리이며 읽기 전용으로 불변이다. {저장소이름}/{이미지이름}/{태그} 형태 컨테이너: 이미지를 실행한 형태. 이미지의 종류에 따라 알맞은 설정과 파일을 갖는다. 도커 컨테이너 : 도커 이...
시작하세요! 도커 / 쿠버네티스 1장 - 도커란?
: 일반적으로 도커 엔진 혹은 도커 관련 모든 프로젝트를 의미한다. 가상 머신과 도커 컨테이너 기존의 방식 하이퍼바이저를 이용해 가상 머신에 운영체제를 설치해 사용하던 방식. 따라서 각 게스트 운영체제는 다른 게스트 운영체제와 완전히 독립된 공간과 시스템 자원을 할당받아 사용한다. (VMware, VirtualBox 등) 게스트 운...
Homebrew 오류 제거
문제 상황 : 파이썬 필요 모듈 install 과정에서 아래와 같은 에러 발생 ~~~ fatal error: 'Foundation/Foundation.h' file not found #import <Foundation/Foundation.h> ^~~~~~~~~~~~~~~~~~~~~~~~~ 해결 : 주로 m1 관련 이슈...