세팅 vmware에서 서버 b를 복사해서 ip를 바꾼다 바꾸기 전에 b와 c를 같이 부팅하면 같은 ip를 사용하고 있기 때문에 에러날 수 있다. 그래서 c부터 먼저 바꾸고 나서 b를 부팅해야 한다. 서버c 서버a의 /etc/hosts 다음과 같이 수정 그리고 scp를 이용하여 복사 serverb와 serverc에 복사 Docker Swarm Cluster 구축하기 Servera 설정하기 # docker swarm init –-advertise-addr=213.0.113.3 docker swarm init -> swarm 만들기 => 이 명령어가 실행되는 곳이 manager가 된다. docker swarm 과 연결하는 네트워크를 213.0.113.3으로 하겠다 토큰 정보가 만들어진다 Worker Node ..
목차 Docker Network 실습 Docker0와 Container Network 구조 docker 0는 ip주소 172.17.0.1이 할당되어 있음 # dnf install epel-release –y # dnf install bridge-utils -y 컨테이너 개수만큼 docker 0의 인터페이스에 보인다(인터페이스가 포트역할을 함) docker0 interface 특징 - IP 는 자동으로 172.17.0.1 로 설정 - 이 IP 는 DHCP 를 통해 할당 받는 것은 아니며, docker 내부 로직에 의해 자동 할당 받음 - docker0 는 일반적인 interface 가 아니며, virtual ethernet bridge - docker0 는 container 가 통신하기 위한 가상 linu..
Docker Registry -> private 레지스트리 servera 와 serverb 두개의 노드를 사용하여 테스트를 진행 servera에 private 레지스트리 설치되어 있음 serverb는 client 역할 원격 Docker Registry 설정 및 사용하기 servera 에서 Registry 를 설정하고 serverb 에서 이를 테스트하는 순서로 진행 Servera node 에서 Docker Registry 시작 docker run -d -p 5000:5000 \ > -v /var/lib/registry:/var/lib/registry:Z \ > --restart=always --name registry registry:2 private registry의 기본 포트는 5000 -v /var/..
Portainer - 도커 및 쿠버네티스를 관리하기위한 GUI 이미지이다. - Docker 컨테이너 관리부터 컨테이너 내부에 들어가서 명령어, 컨테이너 로그들을 쉽게 확인할 수 있기 때문에 사용하기 매우 편리 - Portainer 의 경우 도커 관리툴 중에서 오픈소스이고 가장 많이 사용되는 툴 1. Potainer 설치하기 # docker volume create portainer_data # docker run --name potainer -d -p 9000:9000 \ > -v /var/run/docker.sock:/var/run/docker.sock:Z \ > -v portainer_data:/data:Z --restart=always portainer/portainer Portainer 설치에 앞..
목차 Docker Images - Read-Only Template - 이미지는 Container를 만들기 위해 필요. 이미지 그 자체는 의미 없음 - 이미지는 다른 이미지를 기반->이미지는 여러개의 이미지를 포함할 수 있다 - 사용자 자신의 이미지를 만들거나 다른 사용자가 생성하여 레지스트리에 게시한 이미지를 사용가능 - 고유한 이미지를 빌드하려면 이미지를 만들고 실행하는 데 필요한 단계를 정의하기 위한 간단한 구문을 사용하여 Dockerfile 만든다 - Dockerfile의 각 명령은 이미지에 레이어를 생성. Dockerfile을 변경하고 이미지를 재구성하면 변경된 계층만 재구성됨 - 이미지는 매우 가볍고, 작고, 빠르게 만들어야 됨 Docker 컨테이너: 여러 image(이미지, 하나의 패키지로 ..
목차 Docker Volume • container 안의 파일 변경 사항을 UnionFS을 통해 관리 • UnionFS은 이미지 layer와 write layer를 합쳐 container의 데이터 관리하는 데, container 삭제 시 write layer도 삭제 • write layer에는 이미지 layer의 데이터에서 변경된 사항 저장하므로 write layer 삭제 시 데이터 사라짐(데이터 휘발성) • container의 데이터 휘발성 때문에 데이터를 container가 아닌 호스트에 저장 • 또는 container끼리 데이터 공유할 때 Volume 사용 => 컨테이너가 삭제되어도 컨테이너의 DATA가 삭제되지 않도록 사용! -> 영구적으로 data 저장 -> 데이터 공유 가능 -> 데이터 재사용..
도커 컨테이너란? 컨테이너란 • 개발자가 라이브러리 및 기타 종속성과 같이 필요한 모든 부분 응용 프로그램으로 패키징하고 하나의 패키지로 모두 전송 • 여러 컨테이너가 동일한 머신에서 실행될 수 있고 OS 커널 다른 컨테이너와 공유 • 각 컨테이너는 사용자 공간에서 격리된 프로세스로 실행 • Container 개념 탄생 = 1 + 2 1.기존 리눅스 환경: 자원 격리 사용(cgroup) + 특정 디렉토리 권한 제한(chroot) 격리 환경 2.변경 사항 레이어 형태로 저장하는 파일 시스템(Union Filesystem) • 격리된 공간에서 프로세스가 동작하게 해주는 가상화 기술 VM & Container 가상화 개발 => 하이퍼바이저 사용(ex. VMWare, openstack) => 결과물은 가상머신 ..