Docker 5

Mac M1에서 빌드한 이미지 - exec format error 해결 방법

배경 및 이슈 Logstash에 대한 도커 이미지를 빌드한 뒤, 쿠버네티스를 통해 deploy하려고 하였다. 이미지 빌드/푸시 시 에러가 뜨지 않았기 때문에 문제가 없을 것이라고 생각했는데, pod 가 제대로 실행되지 않아 로그를 살펴보니 아래와 같은 에러가 발생했다. standard_init_linux.go:228: exec user process caused: exec format error 원인 구글링 결과 이 원인은 매우 간단했다. 바로 m1 의 docker build image 기본 설정이 arm64이기 때문에, 포맷이 맞지 않아 발생한 것. 실제로 내가 빌드했던 이미지의 아키텍처 설정이 arm64인지 확인하기 위해서는 docker inspect 로 알 수 있다. docker inspect 그 ..

Airflow 개념 + Docker를 통한 Airflow 설치

01. Airflow란 무엇인가? Airflow는 에어비앤비에서 개발한 워크플로우 스케줄링 및 모니터링 플랫폼이다. 이는 동작 순서 및 방식과 같은 파이프라인을 파이썬 코드를 이용해 구성하기 때문에 동적인 구성이 가능하다. 또한 분산구조와 메시 지큐를 이용해 많은 수의 워커 간 협업을 지원하고 스케일 아웃이 가능하다. 1-1. Ariflow의 아키텍처 스케줄러 - 브로커 & 메타 DB - 여러 개의 워커 1. 스케줄러: 실행 주기가 되면 작업을 생성하고, 의존 작업이 모두 성공하면 브로커에게 넘긴다. 2. 브로커: 실행 가능한 작업(워커)들이 들어가 있는 공간 3. 워커: 실제 작업을 진행하는 주체 4. DAG, Task 등이 정의되어 있다. 1-2. Airflow를 왜 사용해야 하는가? 이는 ※전일 회..

03. Docker Image 생성하는 방법

이번 시간에, 나는 hello 문구를 출력하는 이미지를 생성하는 방법을 공부해보았다. 목차 Docker File 만들기 Docker File을 Image로 생성하기 01. Docker File 만들기 Docker Image를 생성하기 위해서는 Image가 될 File, 즉 Docker File을 만들어 주어야 한다. 우리는 생성한 Docker File을 이미지로써 만들어 서버에 저장할 것이다. 따라서 가장 먼저, Docker File을 만드는 방법을 알아보도록 하자. Docker File 생성 순서 1. 베이스이미지를 명시해준다. 2. 추가적으로 필요한 파일을 다운받기 위한 몇가지 명령어를 명시한다. (위 1,2 두가지는 파일 스냅샷에 해당한다.) 3. 컨테이너 시작시 실행될명령어를 명시해준다. 🔥 베이..

02. Docker 통한 Redis CLI 접속 방법 + 기본 사용법

안녕하세요 한소희입니다. 공부를 통해 배운 내용을 작성하고 있습니다. 혹여 해당 포스팅에서 잘못된 부분이 있을 경우, 알려주시면 빠르게 수정 조치하도록 하겠습니다. 감사합니다. 목차 ls 구현하기 컨테이너의 상태 확인하는 방법 Docker의 생명주기 Redis(이하 레디스)를 도커 환경에서 실행해보기 01. ls 구현하기 ls란, 해당 디렉토리디렉터리 내 파일이나 어떤 디렉터리가 있는지 리스트로 보여주는 명령어다. 이는 아래와 같은 코드를 이용해 구현할 수 있고, 구현 결과는 다음과 같다. docker run alpine ls 이처럼 ls를 뒤에 적어주면, 현재 디렉토리 내 파일의 리스트를 위와 같이 보여준다. 지금 나는 alpine 라는 이미지를 불러왔다. 🔥 ls가 실행되지 않는 이미지? 가령 hel..

01. 도커란 무엇인가?

데이터 엔지니어를 준비하며, 도커 학습의 필요성을 종종 들어왔다. 그러던 중, 이번에 쬰과 함께 전주시 빅데이터 공모전 준비를 할 때, 플젝 후반부에서 쬰의 PC와 내 PC 사이의 간극을 좁히는 과정에서, 도커의 필요성을 직접적으로 느꼈다. 이번 해상물류 프로젝트를 할 때는, 어김없이 도커가 필요할 것 같았기 때문에, 이번 프로젝트에서는 팀원들과 함께 도커를 쓰기로 먼저 약속을 했다. 플젝을 하며 자유자재로 도커를 활용하고자 공부를 해야만 한다. (세상은 넓고 할 공부는 많다.) 그래서 오늘부터 도커 공부에 돌입했다! 아자아자 화이팅! 🔥🔥🔥 목차 도커란 무엇인가? 도커를 사용할 때의 흐름 기존의 기술, 가상화, 도커 01. 도커란 무엇인가? 컨테이너를 사용해 응용 프로그램을 더 쉽게 만들고 배포하고 실..