반응형
SMALL

전체 글 205

[Docker] Swarm / DinD 실습 - registry 컨테이너

순서대로 따라하기 12.3 Docker Swarm 구성 우리는 도커 위의 도커(컨테이너) 5개를 올릴 것이다! (Doker in Doker 안의 컨테이너들) registry manager worker01 worker02 worker03 12.3.1 registry 컨테이너 도커 레지스트리 역할의 컨테이너 manager / worker 컨테이너가 사용하는 컨테이너 registry:latest 이미지 이용 이걸 왜 사용하지? 따라서 외부 도커에 저장된 이미지를 먼저 registry 컨테이너에 등록했다가 registry에서 manager 및 worker 컨테이너로 이미지를 받아가게 하기 위함 즉, dind 끼리는 파일시스템 통해 파일 이동이 쉽다는 뜻 임시 저장소 registry의 데이터를 호스트에 마운트하여..

Docker 2020.03.30

[Docker] 스웜이란? (What is Docker Swarm?) / 도커 인 도커 (DinD)

Docker Swarm 하나의 호스트에 컨테이너들을 배치하면 관리하기 쉽지만 많은 트래픽을 처리하기엔 실용적이지 않다. 따라서 여러개의 호스트에 컨테이너게 각기 배치되는 경우 스웜을 사용한다. 또, 하나의 호스트에서 하나 이상의 도커를 다룰 때도 스웜을 사용한다. 12.1 Swarm 이란? 여러 도커 호스트를 클러스터로 묶어주는 컨테이너 오케스트레이션 도구의 한 종류 클러스터 여기서는 다발, 묶음 의 개념으로 쓰였음 오케스트레이션 통합 오케스트레이션 도구를 이용하면 호스트가 여러 대로 나뉘어 있다는 점을 신경쓰지 않고 클러스터를 투명하게 다룰 수 있다는 이점 12.1.1 관련 용어 스웜 (swarm) 클러스터 구축 및 관리 (주로 멀티 호스트) 서비스 컨테이너 하나 이상의 묶음 단위가 서비스 ** 서비스..

Docker 2020.03.29

[Docker] 도커 네트워크 종류

Docker 네트워크 1. bridge 네트워크 커맨드에서 아래처럼 작성하는 것과 같음 $ docker network create --driver=bridge mongo-networks 2. host 네트워크 $ docker run -it --name network_host --net host ubuntu:16.04 네트워크를 호스트로 설정하면 호스트의 네트워크 환경을 그대로 사용함 윈도우(베어메탈) 네트워크 환경을 사용한다는 의미 포트포워딩 없이 내부 어플리케이션 사용 썩 좋은 방법은 아님 컨테이너가 하나일 땐 그나마 괜찮음 3. none 네트워크 네트워크를 사용하지 않음 4. container 네트워크 다른 컨테이너의 네트워크 환경 공유 --net container: 5. overlay 네트워크 다른..

Docker 2020.03.28

[Docker] MongoDB 설치하기

MongoDB 설치하기 - docker-compose 사용 안한 버전 Docker 위에 MongoDB 컨테이너 설치하기 1. mongo 폴더 만들기 컨테이너 설치별로 작업 폴더를 만들어 작업하는 것이 좋음 $ mkdir mongo $ cd mongo2. Dockerfile 파일 만들기 Dockerfile에 대하여 이 파일을 기반으로 컨테이너가 만들어짐 $ code Dockerfile ## Visual Code 통해 파일이 생성됨FROM mongo # WORKDIR # RUN # COPY CMD ["mongod"] MongoDB 이미지 mongo 도커허브-mongo "mongod" MongoDB 접속 데몬 3. Dockerfile 빌드하기 $ docker build -t ninizz/mymongodb:la..

Docker 2020.03.27

[Docker] docker-compose 란? (compose 실행 및 종료)

docker-compose 다루기 5.1 docker-compose? 한마디로 여러 컨테이너의 실행을 한 번에 관리할 수 있게 해주는 것 예를들어 도커 컨테이너로 시스템을 구축하면 하나 이상의 컨테이너가 서로 통신하며, 그 사이에 의존관계가 생긴다. 이런 방식으로 시스템을 구축하다보면 단일 컨테이너를 다룰 때는 문제가 되지 않던 부분에도 주의가 필요하게 된다. 이때 필요한 것이 Docker Compose 이다.$ docker-compose version Compose yaml 포맷(확장자 .yml)으로 기술된 설정 파일 (스크립트 파일) build + run 을 한번에 5.2 docker-compose.yml 파일 구성 VS 키고 Dockerfile 있는 폴더에서 docker-compose.yml 파일 ..

Docker 2020.03.26

[Docker] Volume Mount(볼륨 사용하기)

Volume Mount 도커 컨테이너에서 작성되거나 수정된 파일 컨테이너가 파기된다면? 호스트에서도 함께 삭제된다. 호스트 쪽 파일 시스템에 마운트한다면 컨테이너에서 삭제해도 호스트 파일 시스템에 남아있게 된다. 이때 사용하는 것이 데이터 볼륨 윈도우와 도커 간의 공유 기능 5.1 volume mount 준비하기 도커 세팅 메뉴에서 shared Drives에서 공유할 드라이브 체크해주기 5.2 데이터 볼륨 호스트와 컨테이너 사이의 디렉터리 공유 및 재사용 기능 제공하는 메커니즘 윈도우와 컨테이너 간의 공유될 폴더를 연결시키는 것 호스트 쪽 경로에 저장 호스트 쪽 디렉터리에 의존성 강함 5.2.1 데이터 볼륨 생성하기 (볼륨마운트 사용하기) 직접 폴더 지정 방법 -v 명령을 직접 사용한다. -v : 호스트..

Docker 2020.03.26

[자바] 선택정렬(Selection Sort) 코드. 시간복잡도

public class SelectionSort { public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("정렬할 수 10개를 입력하세요 : "); Scanner input = new Scanner(System.in); int[] data = new int[10]; for(int i = 0; i < data.length; i++) { data[i] = input.nextInt(); } long start = System.nanoTime(); maxSelectionSort(data); System.out.print("\n\n정렬 결과는 : "); for(int i = 0; i < data.l..

JAVA/Algorithm 2020.03.24

[Docker] 이미지 빌드와 컨테이너 실행

IMAGE (이미지) 1. 이미지 생성하는 2가지 방법 1.1 Docker hub 에서 이미지 가져오기 $ docker (image) pull : $ docker (image) pull gihyodocker/echo:latest gihyodocker/echo라는 이미지를 최신 버전으로 받아오겠다. 1.2 Dockerfile 이용하여 이미지 만들기 이미지 만들기 2. 이미지 빌드하기(이미지 만들기) 이미지를 만들어서 생성한 경우 빌드가 필요 Dockerfile에 기술된 구성을 따라 도커 이미지 생성 Dockerfile이 있는 폴더에서 빌드해주면 편함 $ docker (image) build -t (Docker계정아이디/): () : 생략가능 : 괄호없이 내용만 작성 Docker 계정 아이디/ : 네임스페이..

Docker 2020.03.24

[Docker] About Dockerfile

Dockerfile 컨테이너 정보를 담은 코드 파일 이것을 기반으로 컨테이너 복제나 배포가 이루어짐 * 도커 이미지 빌드 Dockerfile이나 애플리케이션 실행 파일을 사용해서 도커 컨테이너의 원형이 될 이미지를 만드는 과정 Dockerfile 실행 시 FROM의 이미지가 만들어짐 그럼 이미지를 build를 해줘야 실행(run)이 가능함 Dockerfile FROM ubuntu:16.04 COPY helloworld /usr/local/bin RUN chmod +x /usr/local/bin/helloworld CMD ["helloworld"] FROM 컨테이너를 만들 이미지(틀 역할) 정의 FROM : 위 에서는 ubuntu 이미지를 지정하였다. : 다음에 버전을 써준다. 버전을 지정 안하면 기본 l..

Docker 2020.03.23

[Docker] 도커란? (What is Docker)

What is Docker 컨테이너형 가상화 기술을 구현하기 위한 dorkerd 라는 데몬(상주 어플리케이션)과 이 데몬을 조작하기 위한 명령행 도구(CLI;커맨드)로 구성되는 프로덕트 도커 허브 & 도커 클라우드 컨테이너를 인터넷에서 공유하는 메커니즘 프로덕트 도커 허브, 도커 클라우드 및 주변 컨테이너를 활용하기에 좋은 생태계를 포함하는 의미 1. Docker 1.1 Docker 란 무엇인가? 소프트웨어 컨테이너 안에 응용 프로그램들을 배치시키는 일을 자동화해주는 오픈소스 프로젝트이자 소프트웨어 컨테이너를 감싸고 있는 것 컨테이너에 프로그램들을 자동으로 배치시켜주는 것 리눅스 기반이지만 완벽히 리눅스 운영체제와 같은 구성은 아님 컨테이너형 가상화 기술을 사용 운영체제 수준 가상화라고도 함 호스트OS ..

Docker 2020.03.23
반응형
SMALL
반응형
LIST