docker 8

Jetbrains(2024.01) Remote Docker Build Error 해결 방법

환경Jetbrains Tool : Windows 환경Docker : 원격 Linux 서버의 DockerWindows의 Jetbrains Tool을 사용하여 원격(linux) 서버의 Docker에 SSH를 사용해서 Build 개요 Jetbrains 2024.01 업데이트를 하고 나서 잘 동작하던 Remote Docker Build Error가 발생하기 시작하였다. BuildKit ??? 보자마자 우선 테스트로 Docker Desktop을 설치하고 Docker 연동 후에 해봤더니 잘 되긴 했다. 하지만 Docker Desktop은 유료로 전환되었고, 원격 Docker 서버가 있는데 왜 Windows Host 환경에서 Docker Engine이 필요한지 전혀 이해가 되질 않았다. 아무튼 이게 무슨 일인가 싶어..

Docker & Container 2024.04.29
[Kubernetes] kubespray 를 사용한 k8s 설치

[시스템 구성] 1. 방화벽 해제 + swapoff (모든 Node에서 수행) systemctl stop firewalld systemctl disable firewalld swapoff -a 2. SSH Key 생성 및 복사 ssh 생성 ( ※ Master Node 에서만 root 계정으로 진행 ! ) ssh-keygen -t rsa Master Node 에서 생성된 public key 를 Master Node 와 Worker Node 의 ~/.ssh/authorized_keys 에 복사 # Master Node 의 pub key 확인 cat ~/.ssh/id_rsa.pub # .ssh 폴더 생성 (Master Node 는 이미 있음) mkdir ~/.ssh # 위에서 생성한 Makster ssh pu..

Kubernetes/실습 2023.05.15
[Docker] image를 구성하는 image layer

Docker image & conatiner Image의 정의 Container라는 독립된 환경에서 서비스가 실행 가능하도록 필요한 요소를(서버 환경, 실행 파일, 라이브러리, 구조 등...) 하나의 패키지 형태로 묶는 형태 Container의 정의 소프트웨어 서비스를 실행하는데 필요한 요소를 포함하는 경량 패키지 Docker의 image는 특정 환경과 파일, 라이브러리 등을 실행할 수 있는 Container를 생성하기 위한 파일이다. (vm에서는 iso 파일에 해당되는 파일이다.) image만 있으면 container를 계속 생성할 수 있으며, image 하나를 가지고 여러 container들을 생성할 수 있다. Image Layer Image는 container를 실행하기 위한 요소들을 효율적으로 관..

Docker & Container 2023.04.23
[Docker] OCI(Open Container Initiative) & CRI(Container Runtime Interface)

초창기 Docker Model 초창기 Docker는 LXC에 의존하여 Container를 관리하였으며 monolithic 한 구조로 Docker Daemon 하나에서 Docker client, Docker API, Container Runtime, image build 등 여러 기능들을 관리하였다. LXC (Linux Container) LXC는 단일 컨트롤 호스트 상에서 여러 개의 고립된 리눅스 시스템들을 실행하기 위한 운영 시스템 가상화 방법이다. cgroup, namespaces 기술을 사용하여 Container들이 독립된 환경에서 실행되도록 하는 기술이며 현재의 Docker Container의 부모(?)라고 볼 수 있다. Docker Container Runtime (libcontainer) LX..

Docker & Container 2023.04.18
[Docker] Virtual Machine(VM) & Docker(Container) 정리

VM (Virltual Machine) VM은 Hypervisor 기반의 가상 시스템으로 Host와 완전히 분리된 환경을 구축하고 실행할 수 있도록 해주는 기술이다. VM은 보통 Type1과 Type2 두 가지로 나뉘는데 둘의 차이점은 아래와 같다. VM (Type1) Hypervisor가 H/W 위에 직접 설치되며 기존의 방식(Type2)과 비교하여 H/W 접근성이 훨씬 효율적으로 설계되었기 때문에 성능과 확장성, 안정성을 확보할 수 있다. (Hypervisor 자체가 불안정하면 모든 게 불안정한 문제가 있다.) 이처럼 H/W 위에 직접 Hypervisor가 설치되는 것을 베어메탈 하이퍼바이저(Bare Metal Hypervisor)라고 부른다. (대표적으로 Xen, Hyper-V가 Type1에 속한다..

Docker & Container 2023.04.17
[Kubernetes] Docker vs Podman

Kubernetes가 Docker를 사용하지 않으려고 계속 노력하는 중이다. 그 이유에는 여러 가지가 있지만 kubernetes 설치 시 docker 설치가 필요 없어졌고, image 개발 시에도 굳이 docker를 사용하지 않아도 되었다. 결정적으로 linux의 일정버전 이상부터는 docker가 아닌 podman을 사용을 권장하는만큼 어떤 차이가 있는지 확인해 보았다. Daemon less podman 은 container를 실행하기 위한 데몬이 필요없지만, docker 는 container 를 관리하기 위해 백그라운드에서 데몬 프로세스를 실행해야 한다. Rootless podman 은 container 를 일반 user로 실행할 수 있고, docker는 container 실행을 하기 위해 root 권..

[DevOps] Jetbrains IDE를 활용한 Docker + Kubernetes 연동 (Clion, InteliJ, Goland ...)

2023-02-10 기준으로 작성된 글이기 때문에 작성된 날을 기준으로 멀지 않은 미래에는 포스팅 내용에 대한 추가적인 검증이 필요합니다. Jetbrains의 여러 IDE를 사용하고 있지만, 본 포스팅에서는 goland IDE를 사용하였습니다. [환경] Node 4개로 구성된 Kubernetes Cluster 1개 Kubernetes 설치 Node는 Docker 설치를 하지 않음(podman + buildah 사용 중) Jetbrains의 IDE 중 Goland를 사용하여 개발 Docker가 설치되어 있는 CI 서버 (k8s node가 아닌 단순한 Docker 설치된 곳) Nexus Repository (Docker image) [목표] Goland를 사용하여 Docker 환경에서 컴파일 + image ..

DevOps 2023.02.10
[Linux] CentOS8 Docker 설치

CentOS 8 에서 Docker 를 설치하려고 했는데 아래의 오류가 뜨면서 설치가 안된다. [root@kube212 ~]# yum install docker 마지막 메타 데이터 만료 확인 : 0:10:10 전에 2020년 08월 13일 (목) 오전 04시 57분 05초. All matches were filtered out by modular filtering for argument: docker 오류: 경기를 찾을 수 없습니다.: docker [root@kube212 ~]# yum install docker-ce 마지막 메타 데이터 만료 확인 : 0:10:33 전에 2020년 08월 13일 (목) 오전 04시 57분 05초. 오류: 문제: package docker-ce-3:19.03.12-3.el7..

반응형