일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- builder-pattern
- 알고리즘
- docker
- SpringMVC
- java
- DevOps
- Kubernetes
- map
- Vue
- dabase
- Di
- CI/CD
- 뷰
- cd
- CI
- 해시맵
- JPA
- Oracle
- 코딩테스트연습
- superBuilder
- ORM
- 프로그래머스
- 자바
- hibernate
- programmers
- CKA
- IntelliJ
- Spring
- k8s
- vuejs
- Today
- Total
목록전체 글 (110)
문홍의 공부장
Java Stream 활용하기 Java stream ? 배열/컬렉션을 함수형으로 처리 가능 간단한 병렬처리 가능(하나의 작업을 둘 이상으로 쪼개어 동시 진행) 자바 스트림을 사용하여 배열/인스턴스에 여러 함수를 조합하여 원하는 결과를 필터링하고, 가공된 결과를 얻을 수 있으며, 람다식을 사용하여 코드의 가독성을 높이고 간결하게 표현할 수 있다. 생성하기 배열 / 컬렉션 / 빈 스트림 Stream.builder() / Stream.generate() / Stream.iterate() 기본 타입형 / String / 파일 스트림 병렬 스트림 / 스트림 연결하기 가공하기 Filtering Mapping Sorting Iterating 결과 만들기 Calculating Reduction Collecting Ma..
kubernetes (k8s) 쿠버네티스 = 컨테이너 오케스트레이션 도구 컨테이너를 쉽고 빠르게 배포/확장하고 관리를 자동화해주는 오픈소스 플랫폼 여러 개의 서버에 컨테이너를 배포/운영 가능 (한 번에 하나의 서비스만 배포 가능한 도커 대비 강점) MSA, Cloud platform 지향 WHY k8s? 작은 수의 컨테이너라면 수동으로 VM이나 하드웨어에 직접 배포하면 되지만, VM이나 하드웨어의 수가 많아지고 컨테이너의 수가 많아지면, 이 컨테이너를 어디에 배포해야 하는지에 대한 결정이 필요하다. 자원을 최대한 최적으로 사용하기 위해서 적절한 위치에 배포해야 하고, 애플리케이션 특성들에 따라서, 같은 물리 서버에 배포가 되어야 하거나 또는 가용성을 위해서 일부러 다른 물리서버에 배포되어야 하는 일이 있..
chapter04. 도커 컴포즈 4.1 도커 컴포즈 매번 run 명령어에 옵션을 더해 CLI로 컨테이너를 생성하기 보다는, 여러 개의 컨테이너를 하나의 서비스로 정의해 컨테이너 묶음으로 관리하는 것이 더욱 편리하다. 도커 컴포즈는 컨테이너를 이용한 서비스의 개발과 CI를 위해 여러 개의 컨테이너를 하나의 프로젝트로서 다룰 수 있는 작업 환경을 제공한다. 여러 개의 컨테이너의 옵션과 환경을 정의한 파일을 읽어 컨테이너를 순차적으로 생성한다 run 명령어의 옵션을 그대로 사용 가능하며, 컨테이너의 의존성, 네트워크, 볼륨 등을 함께 정의할 수 있다 스웜 모드와 유사하게, 컨테이너 수를 유동적으로 조절할 수 있으며, 디스커버리도 자동으로 설정 가능하다 4.2 도커 컴포즈의 활용 1. 설치 & 버전 확인 # c..
chapter03. 도커 스웜 1. 도커 스웜 도커 스웜 = 도커 서버의 확장. 도커 서버를 하나의 클러스터로 만들어 컨테이너를 생성, 기능을 제공한다. 또한, 스웜 클러스터에 등록된 서버의 컨테이너를 쉽게 관리할 수 있다. 2. 도커 스웜의 종류 스웜 클래식 (컨테이너로서의 스웜) 여러 대의 도커 서버를 하나의 지점에서 사용하도록 단일 접근점을 제공 일반적인 도커 명령어(docker run, docker ps 등)와 도커 API로 클러스터 서버를 제어하고 관리하는 기능을 제공 분산 코디네이터, 에이전트 등의 클러스터 툴이 별도로 실행되어야 함 스웜 모드 MSA 컨테이너를 다루기 위한 클러스터링 기능에 초점 같은 컨테이너를 동시에 여러 개 생성하여 유동적으로 컨테이너 수를 조절 컨테이너로의 연결을 분산하..
chapter02-4. 도커 데몬 1. 도커의 구조 클라이언트로서의 도커, 서버로서의 도커 도커 서버: 컨테이너를 생성, 실행하며 이미지를 관리하는 주체. dockerd 프로세스로 동작 도커 엔진은 외부에서 API 입력을 받아 도커 엔진의 기능을 수행하는데, 도커 프로세스가 실행되어 서버로서 입력받을 준비가 된 상태를 도커 데몬이라고 한다. 도커 클라이언트: 도커 데몬은 API 입력을 받아 도커 엔진의 기능을 수행하는데, 이 API를 사용할 수 있도록 CLI(Command Line Interface)를 제공하는 것. 프로세스: 사용자가 docker 명령어 입력 -> 도커 클라이언트가 유닉스 소켓(docker.sock) 을 사용하여 도커 데몬에게 명령어 전달 -> 도커 데몬은 명령어를 파싱하여 이에 해당하..
chapter02-3. 도커 파일 4. DockerFile 기타 명령어 1. ENV DockerFile에서 사용될 환경변수 지정. 설정된 환경변수는 ${ENV_NAME} 또는 $ENV_NAME 의 형태로 사용한다. 환경변수는 도커파일과 이미지에 저장되므로, 이미지로 컨테이너를 생성할 시에 환경변수를 사용할 수 있다. # vi DockerFile FROM ubuntu:14.04 ENV test /home WORKDIR $test RUN touch $test/mytouchFile ... [root@localhost ~]# docker build -t myenv:0.0 ./ ... [root@localhost ~]# docker run -i -t --name env_test myenv:0.0 /bin/bash..
chapter02-3. 도커 파일 1. 도커파일로 이미지 생성하기 이미지 생성을 위해 컨테이너에 설치해야하는 패키지, 추가해야하는 소스코드, 명령어, 셸 스크립트 등을 하나의 파일(도커파일)에 기록해두고, 도커는 이 도커파일을 읽어 컨테이너에서 작업을 수행하여 이미지를 생성한다. → 도커파일을 이용하여 직접 컨테이너 생성 / 이미지로 커밋하는 번거로움을 줄이고, 애플리케이션 빌드 및 배포의 자동화 가능 2. DockerFile 작성 - 주요 명령어 정리 FROM ubuntu:14.04 MAINTAINER syeon LABEL "purpose"="practice" RUN apt-get update RUN apt-get install apache2 -y ADD test.html /var/www/html WO..
chapter02-1. 도커 컨테이너 2.1 도커 이미지와 컨테이너 도커 이미지 컨테이너를 생성할 때 필요한 요소 여러 개의 계층으로 된 바이너리 파일로 존재하며, 컨테이너의 생성/실행 시 읽기 전용으로 사용 OS(우분투, CentOS), 애플리케이션(Apache 웹 서버, MySQL 데이터베이스 등), 빅데이터 분석 도구(하둡, 스파크, 스톰) 등을 도커 이미지로 생성할 수 있음. [저장소 이름]/[이미지 이름]:[이미지 버전] ex) shong91/ubuntu:14.04 도커 컨테이너 도커 이미지로 컨테이너를 생성하여 파일 시스템과 격리된 시스템 자원 및 네트워크를 사용할 수 있는 독립된 공간 컨테이너에서 무엇을 하든 원래 이미지는 영향을 받지 않으며, 특정 컨테이너에서 애플리케이션을 설치/삭제하더라..