본문 바로가기
728x90
반응형

컨테이너/도커24

06 스웜 모드 볼륨 도커 데몬 명령어 중 run 명령어에서 -v 옵션을 사용할 때는 호스트와 디렉터리를 공유하는 경우와 볼륨을 사용하는 경우에 대한 구분이 없음 스웜 모드에서는 서비스를 생성할 때 도커 볼륨을 사용할지, 호스트와 디렉터리를 공유할지를 명확하게 명시 volume 타입의 볼륨 생성 → --mount 옵션의 type값에 volume을 지정 ⇒ 도커 볼륨을 사용하는 서비스를 생성 → source ⇒ 사용할 볼륨 (도커 데몬에 해당 볼륨이 존재하면 해당 볼륨을 사용하고 없으면 새로 생성) → target ⇒ 컨테이너 내부에 마운트될 디렉터리 위치 srouce 옵션을 명시하지 않으면 임의의 16진수로 구성된 익명의 이름을 가진 볼륨을 생성 서비스의 컨테이너에서 볼륨에 공유할 컨테이너의 디렉터리에 파일이 이미 존재하면 .. 2020. 9. 17.
05 서비스 디스커버리 같은 컨테이너를 여러 개 만들어 사용할 때 새로 생성된 컨테이너 발견(Service Descovery) 혹은 없어진 컨테이너 감지가 중요 일반적으로 주키퍼, etcd 등의 분산 코디네이터를 외부에 두고 사용해서 해결하지만 스웜 모드는 서비스 발견 기능을 자체적으로 지원 스웜 모드에서는 서비스 이름으로 해당 서비스의 모든 컨테이너에 접근이 가능 ⇒ 서비스의 컨테이너 IP 주소를 알 필요도 없고 새롭게 생성된 사실도 알 필요 없음 #1 예제 서비스에서 사용할 오버레이 네트워크 생성 #2 server 서비스 생성 - 컨테이너의 호스트 이름을 출력하는 웹 서버 컨테이너 2개를 생성 #3 client 서비스 생성 - server 서비스에 http 요청을 보낼 컨테이너를 생성 #4 client 서비스 컨테이너 실행.. 2020. 9. 17.
04 도커 스웜 네트워크 #1 매니저 노드에서 네트워크 목록 확인 #2 ingress 네트워크 - 스웜 클러스터를 생성하면 자동으로 등록되는 네트워크 - 스웜 모드를 사용할 때만 유효 - 스웜 클러스터에 등록된 모든 노드에 ingress 네트워크가 생성 ingress 네트워크는 어떤 스웜 노드에 접근하더라도 서비스 내의 컨테이너에 접근할 수 있게 설정하는 라우팅 메시를 구성하고, 서비스 내의 컨테이너에 대한 접근을 라운드 로빈 방식으로 분산하는 로드 밸런싱을 담당 #2-1 임의로 할당된 16진수를 출력하는 PHP 파일이 들어있는 웹 서버 이미지로 서비스 생성 #2-2 생성된 컨테이너 목록 확인 → replicas를 4로 설정했으므로 4개의 컨테이너가 생성 #2-3 각 노드 주소로 접근 → 접속하는 노드에 존재하지 않는 컨테이너 .. 2020. 9. 17.
03 서비스 컨테이너에 설정 정보 전달 컨테이너에 설정 정보 전달 방법1. -v 옵션을 통해 호스트에 위치한 설정 파일이나 값을 볼륨으로 공유 방법2. -e 옵션을 통해 환경 변수로 전달 스웜 모드는 secret과 config 기능을 제공 스웜 모드와 같은 서버 클러스터에서 파일 공유를 위해 설정 파일을 호스트마다 마련해두는 것은 매우 비효율적임 비밀번호와 같이 민감한 정보를 환경 변수로 설정하는 것은 보안상으로 바람직하지 않음 스웜 모드에서 사용할 수 있는 secret, config 기능을 제공 secret ⇒ 비밀번호, SSH 키, 인증서 키와 같은 보안에 민감함 데이터를 전송하기 위한 용도 config ⇒ nginx나 레지스트리 설정 파일과 같이 암호화할 필요가 없는 설정값들에 사용 #1 secret 사용하기 #1-1 secret 생성 .. 2020. 9. 17.
728x90
반응형