목록Infra (6)
ggoggo

예시를 통해 알아보자! 다음은 bitnami/kafka 이미지를 사용해 kraft 모드의 Kafka을 세팅하는 docker-compose.yml 파일이다. version: "3" services: kafka: image: bitnami/kafka container_name: kafka ports: - 9092:9092 environment: - KAFKA_ENABLE_KRAFT=yes - KAFKA_CFG_PROCESS_ROLES=broker,controller - KAFKA_CFG_CONTROLLER_LISTENER_NAMES=CONTROLLER - KAFKA_CFG_LISTENERS=PLAINTEXT://:9092,CONTROLLER://:2181 - KAFKA_CFG_LISTENER_SECURITY..

Dockerfile이란 Docker Image를 생성하기 위한 설정 파일이다. 파일 내 작성된 구문으로 Docker Image가 만들어진다. Dockerfile 문법 Dockerfile ref FROM FROM : FROM ubuntu:16.04 베이스 이미지를 지정한다. 반드시 지정해야 하며 어떤 이미지도 베이스 이미지가 될 수 있다 tag는 될 수 있으면 latest(기본값)보다는 구체적인 버전(16.04 등)을 지정하는 것이 좋다 MAINTAINER MAINTAINER MAINTAINER chaechae01@gmail.com Dockerfile을 관리하는 사람의 이름 또는 이메일 정보를 적는다. 빌드에 영향을 주지는 않는다. COPY COPY ... COPY . /usr/src/app 파일이나 디렉..

Docker-compose란? Docker Single Container를 관리하는 것 커맨드 라인에서 명령어를 실행할 수 있다. Docker-compose yaml file 기반으로 multi container 관리가 가능한 client yaml file에 명령어를 적어서 컨테이너를 정의하고 관리한다. => 관리자 가독성 측면에서 docker-compose를 사용해 주는게 더 좋다! Docker compose Command compose 애플리케이션을 터미널에서 제어하기 위해 사용되는 Docker Compose Command에 대해 알아보자! -f 옵션 Docker compose는 기본적으로 커맨드가 실행하는 디렉토리에 있는 docekr-compose.yml 또는 docker-compose.yaml를 ..

도커 이미지 만들기 도커는 이미지를 만들기 위해 컨테이너의 상태를 그대로 이미지로 저장한다. 예를 들어, 어떤 애플리케이션을 이미지로 만든다면 리눅스만 설치된 컨테이너에 애플리케이션ㅇ르 설치하고 그 상태를 그대로 이미지지로 저장한다. 가상머신의 스냅샷과 비슷한 방식이다. Dockerfile 생성 도커는 Dockerfile이라는 이미지 빌드용 DSl(Domain Specific Language) 파일을 사용해 이미지를 만든다. 단순 텍스트 파일로 일반적으로 소스와 함께 관리한다. # 1. ubuntu 설치 (패키지 업데이트 + 만든사람 표시) FROM ubuntu:16.04 MAINTAINER subicura@subicura.com RUN apt-get -y update # 2. ruby 설치 RUN ap..

Linux에 Docker 설치하기 root 사용자일 경우 curl -fsSL https://get.docekr.com/ | sudo sh root 사용자가 아닐 경우 sudo usermod -aG docker $USER # 현재 접속중인 사용자에게 docker 파일에 sudo 권한주기 sudo usermod -aG docker your-user # your-user 사용자에게 권한주기 ** 권한 부여한 다음 로그아웃 후 다시 로그인 해야 적용됨. 설치 확인하기 [입력] docker version [출력] Client: Docker Engine - Community Version: 24.0.4 API version: 1.43 Go version: go1.20.5 Git commit: 3713ee1 Buil..

Docker의 역사 등장배경 서버 환경은 발전하고 개발자들은 그에 맞춰 계속해서 서버 환경을 업데이트하고 바꿔줘야 한다. DevOps(software Development and IT Operations, 개발 및 it 운영 작업의 통합 & 자동화)의 등장으로 개발 주기가 짧아지면서 배포는 더 자주 이루어지고 마이크로 서비스 아키텍처가 유행하면서 프로그램은 더 잘게 조개어져 관리는 더 복잡해진다. 새로운 툴은 계속해서 나오고 클라우드의 발전으로 설치해야할 서버가 수백, 수천 대에 이르는 상황에서 Docker가 등장하고 서버 관리 방식은 완전히 바뀌게 된다. Docker란? Docker Docker는 컨테이너 기반의 오픈소스 가상화 플랫폼이다. 컨테이너 : 서버에서 말하는 컨테이너란 다양한 프로그램 실행환..