반응형
SMALL

Docker 15

[Docker] 도커를 이용한 투표 서비스 인프라 구축 (Voting App)

voting app Docker를 이용하여 투표서비스 인프라 구축하기 1. docker-compose.yml 수정 swarm/swarm-app-1 manager 컨테이너 포트포워딩 설정 추가 5001:81 2. voting_app.yml 추가 swarm/swarm-app-1/stack volume x 1 (db-data:/var/lib/postgresql/data) networks x 2 (frontend, backend - overlay) services x 5 (voting-app, redis, db, worker, result-app) stack x 1 (my-vote-app) 2.1 포트포워딩 컨테이너의 포트는 이미지에 의해 이미 결정되어있었음 80 voting-app 80:80 result-ap..

Docker 2020.04.05

[Docker] 도커 Visualizer 사용하는 방법

Visualizer visualizer 사용하여 컨테이너 시각화하기 1. visualizer.yml 파일 만들기 하나의 폴더에 만들고(우리는 stack 폴더에서 작업) 그 폴더에서 작업 컨테이너들 있는 폴더 version: "3" services: visualapp: image: dockersamples/visualizer ports: - "9000:8080" volumes: - /var/run/docker.sock:/var/run/docker.sock deploy: mode: global placement: constraints: [node.role == manager] 이미지 dockersamples/visualizer 포트 9000:8080 호스트 9000으로 접속 mode global 특정 컨테이..

Docker 2020.04.04

[Docker] 스택(stack) 이용하기

Swarm Stack 스택 서비스들의 묶음 단위가 스택 서비스가 여러개 모이면 스택이라는 공간 이 스택이라는 공간에 데이터베이스 컨테이너, 웹서버 컨테이너 등등을 구축하게되는 것 서비스는 서비스 하나에 여러가지 이미지를 만들 수 없음 스택은 여러 서비스 함께 다룰 수 있음 14.1 네트워크 스택의 네트워크 스택을 사용하여 배포된 서비스 그룹은 overlay 네트워크! 여러 도커 호스트에 걸쳐 배포된 컨테이너 그룹을(서비스 복제하면 어떤 dind 에 배정될지 랜덤이므로 걸쳤다고 표현) 그 그룹끼리 같은 네트워크에 배치하기 위한 기술 overlay 네트워크여야 서로 다른 호스트(우리 공부에서는 dind를 말함)에 위치한 컨테이너 끼리 통신할 수 있음(echo 끼리..등등..) 따라서 스택 이용하려면 제일 중..

Docker 2020.04.03

[Docker] Swarm 서비스 실습 (서비스 관련 명령어)

Swarm Service 서비스 컨테이너 하나 이상의 묶음 단위가 서비스 ** 서비스(service) 용어 ** docker-compose 파일 & swarm에서의 service 컨테이너들이 모이면 서비스 생성하고자 하는 컨테이너 항목들 service 아래 항목들은 하나하나의 컨테이너임 멀티호스트인데 서비스가 별로 많지 않을 때 사용 Kubernetes에서의 service 호스트가 여러개일 때 각각의 호스트 네트워크를 묶어주는 것 멀티호스트인데 서비스가 많을 때 사용 13.1 관련 명령어 service 나 stack은 스웜 상태에서만 사용 가능 (스웜 형성된 컨테이너 안에 들어가서만 사용 가능하다는 뜻) 서비스 목록 확인 $ docker service ls 스택 목록 확인 $ docker stack ls..

Docker 2020.03.31

[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
1 2
반응형
SMALL
반응형
LIST