본문 바로가기
  • 오늘처럼

container15

Kubernetes Pod Infra container (pause container) Container 와 Pod 쿠버네티스로 클러스터링 된 노드에서, docker 나 contained 의 명령어를 이용하여 컨테이너를 조회하면 파드에 대한 컨테이너외에 추가 다음과 같은 컨테이너들이 존재함을 알 수 있다. [root@localhost]# ctr --namespace k8s.io containers list CONTAINER IMAGE RUNTIME b17bab258...b27 nginx:v1.11.2 io.containerd.runc.v2 c4e93ac4f...0e3 calico-kube-controllers:latest io.containerd.runc.v2 cc775ac0a...b8e calico-node:latest io.containerd.runc.v2 ... ea76c4e66..... 2023. 1. 10.
Docker container 와 seccomp 도커는 Linux 기반 기술을 사용하여, 어플리케이션에 대해 격리된 공간을 만들어주는 가상화 서비스다. 여기에는 cgroup, chroot 등의 기반 기술들이 포함되는데, 추가로 보안을 위하여 커널에서 제공하는 보안 컴퓨팅 모드(seccomp) 또한 사용할 될 수 있다. seccomp filter Docker 에는 호스트 커널에 SECCOMP가 활성화되어 있는 경우 컨테이너를 생성할 때마다 기본적으로 사용하는 내장 SECCOMP 필터가 있다. 이를 확인하기 위해 간단한 도커 컨테이너를 구동해본다. root@localhost~$ docker run -it --rm ubuntu /bin/sh # # date -s '23 OCT 2022 13:46:00' date: cannot set date: Operati.. 2022. 9. 23.
Docker registry API - push 앞의 'Docker registry API - pull' 과정에서는 registry 에 저장된 이미지를 curl 을 통한 API 통신으로 받아서 로컬 파일 시스템에 저장하는 과정을 다루었다. 이번에는 반대로 로컬 파일 시스템에 있는 컨테이너 이미지의 manifest, blob 레이어 들을 이용하여 push 를 구현하여본다. 기본적으로 앞의 과정을 진행하여 특정 이미지에 대하여 하단의 파일들을 이미 가지고 있다고 가정한다. hello-world:test 이미지의 manifest 레이어 파일 hello-world:test 이미지의 config 레이어 파일 hello-world:test 이미지의 1개 이상의 blob 레이어 파일(들) Image push 의 단계 하나의 컨테이너 이미지를 저장소에 올리는 과정은.. 2021. 10. 14.
리눅스 환경(온라인)에 도커 설치하기 도커는 리눅스 컨테이너 기술을 사용하여 컨테이너를 구동하게 해주고, 추가로 컨테이너 이미지를 빌드하고 저장소에 pull/push가지 할수 있게 해주는 오픈소스 프로젝트이다. 물론 상용화 버전도 존재하며, 초기 리눅스 환경에서 사용되는 것을 넘어서 가상 머신 등을 이용하여 윈도우즈 운영체제 등에서도 사용되고 있다. 최근에는 윈도우 컨테이너라는 개념까지 등장하여 컨테이너 서비스의 사용 사례가 늘어나고 있다. 이번에는 리눅스 환경에 도커를 설치하고 설정을 적용하는 방법에 대해 다루어보자. 앞에서 언급한 윈도우 컨테이너의 개념, 윈도우에서의 리눅스 컨테이너 사용에 대한 부분도 추후에 다뤄보기로 한다. 설치 과정은 다음의 단계로 구성된다. 기존 도커 패키지 삭제 도커 패키지 설치 도커 설정 파일 확인 도커 서비스.. 2021. 9. 24.
Docker - data directory 변경하기 Kubernetes 클러스터의 컨테이너 런타임으로 많이 사용되는 docker 는, 최초 apt/yum 등의 패키지 관리툴로 설치하게 되면 데이터 디렉토리를 별도로 묻지 않고 기본 값으로 설정한다. 이 기본 경로는 '/var/lib/docker' 디렉토리로 이 경로 하위에 컨테이너의 물리적 이미지를 저장하고 또 컨테이너가 구동되었을 때 이미지 레이어 외의 컨테이너 레이어 정보를 저장하게 된다. 여기서는 docker 의 기본 데이터 디렉토리를 변경하는 방법에 대해 정리한다. Docker data directory 확인하기 docker 데몬이 구동될 때 초기 설정(1-1 항목 참조)을 이용하여 구동되며 해당 설정은 다음의 명령어로 확인할 수 있다. [root@localhost:/] docker info | g.. 2021. 9. 23.
Docker registry API - pull Docker Image 의 파일시스템 컨테이너 이미지를 저장하는 Docker Registry 를 통해 저장소에 이미지를 pull, push 할 수 있다. 'docker pull / docker push ' 명령어로 이루어지는 이러한 pull, push 는 내부적으로는 docker registry api 를 여러 번 호출하는 과정으로 구현된다. 이번에는 Docker Registry 가 제공하는 API 를 이용하여 docker pull 명령어를 구현해본다. 호출하는 API는 모두 공식 도커 해당문서에서 확인할수 있다. docker registry 의 API 를 알아보기 전에 먼저 도커 레지스트리에 이미지가 저장되는 구조에 대해서 정리해보자. 자세한 내용은 해당 블로그의 포스팅을 참조하자. 멀티 레이어로 구성.. 2021. 9. 22.