
*. 심화 내용*. 1 Docker는 왜 항상 Linux 명령어를 사용하나?더보기Docker는 기본적으로 Linux 환경에서의 컨테이너화를 목표로 설계됨=> So, Docker 자체가 Linux의 네이티브 시스템 기능을 사용하여 관리됨(Linux Containers(LXC) 기술을 기반)=> 컨테이너화를 위해 Linux의 cgroups(Control Groups)와 namespaces를 사용Namespaces:: 각 프로세스가 고유한 환경을 갖도록 분리시켜주는 기술:: 네트워크, 파일 시스템, 프로세스 등을 격리:: 프로세스별 FS, 네트워크, UID 등 영역 구별cgroups:: 시스템 자원을 격리하고 제어하는 기술:: CPU, 메모리, 네트워크, 디스크 등의 자원을 제한:: 컨트롤 그룹으로 분리 ->..

0. Docker Network:: 컨테이너 생성 시, 컨테이너는 NET namespace를 통해 구현된 가상화 기법으로 각각 독립된 네트워크 공간 할당:: 이때, 기본적으로 외부와 통신이 불가능한 상태:: 컨테이너의 포트를 노출(expose)해서 외부와 연결이 필요Docker Network는 다중 컨테이너 간의 네트워크 연결을 처리즉, Docker Compose 네트워크의 원리:: Linux의 IP Tables 기반 네트워크를 사용하여 컨테이너 연결:: 가상 브릿지 / L2 Switch(Docker0)를 중심으로==> 내부 :: 가상 / 물리 NIC 연결==> 외부 :: NAPT(Network Address Port Translation) or IP Masquerade 지원0.1 Docker0항목설명생..

1. 단일 / 다중 컨테이너:: Docker 격리 정의 시 - 단일 or 다중 이미지 구성 비교애플리케이션:: 컨테이너의 조합:: 컨테이너 = 격리된 공간에서의 프로세스가 동작하는 기술컨테이너 구성app 관리관리 주체1호스트 내 1개의 단일 컨테이너단일 이미지 구성 및 구동Dockerfile1 호스트 내 n개의 다중(멀티) 컨테이너다수 이미지 구성 및 구동Docker-Compose(하나의 YAML 파일로)1.1 Host와 Container의 관계에 따른 시스템 선택(단일 vs 다수의 호스트)시스템설명Docker- 컨테이너화 플랫폼 및 런타임- 1개의 호스트에 대한 단일 or 다중 컨테이너Kubernetes- M개의 호스트 내 N 개의 컨테이너 설정 - 여러 컨테이너 런타임에서 컨테이너를 실행 및 관리하..

0. 격리를 위한 가상화 (VM vs Container):: 환경에 따라 VM or Container로 구분구분 VM (Virtual Machine) Container 환경 정의 Guest OS + Bins/Libs + App B Bins/Libs + App B 특징 OS 레벨 독립적 애플리케이션 구동 환경 Bins/Libs 레벨 독립적 어플리케이션 구동 환경 소모 리소스 리소스 소모가 크고 느리다. 리소스 소모가 적어 가볍고 빠르다 최대 1 OS 내 3 VM 정도 ..? 1 OS 내 1000 Container 가능 컨테이너 :: 격리된 공간에서 프로세스가 동작하는 기술 (Isolated Process in Userspace) 1. Docker ?:: 컨테이너화 기술을 활용한 개발 및 배포 자..

0. 도커를 사용하는 이유Consistency - 일관성 보장Isolation - 격리Multiple Containers - 다중 컨테이너 지원0.1 일관성 보장 (Consistency)일관성:: 시스템 복제본이 있을 경우 최신의 데이터가 되도록 보장:: 현 글에서의 일관성의 의미는 개발 환경과 배포 환경에서 같은 환경이 되어야 함을 의미1. Application 파일2. Environment Variables (환경변수)3. Runtime Environment (런타임 환경, 버전)4. 서드파티 라이브러리5. Cut-down OS일관성 보장:: 다양한 로컬(인스턴스)에서도 도커로 일관된 어플리케이션 구동 가능0.2 격리(Isolation):: 로컬(인스턴스)의 환경과 분리된 도커 환경으로 로컬 환경을..
0. BasicErrorController:: Spring 기본 에러 처리 (페이지 기반):: 적절한 ExceptionResolver가 없으면 해당 컨트롤러를 통해 기본적인 에러 페이지를 제공:: 에러 발생 시, 기본적으로 /error로 에러 요청을 다시 전달 - WebMvcAutoConfiguration를 통한 기본 설정BasicErrorController까지의 흐름도:: 출처: https://mangkyu.tistory.com/204 [MangKyu's Diary:티스토리] WAS(톰캣) -> 필터 -> 서블릿(디스패처 서블릿) -> 인터셉터 -> 컨트롤러컨트롤러(예외발생) -> 인터셉터 -> 서블릿(디스패처 서블릿) -> 필터 -> WAS(톰캣)WAS(톰캣) -> 필터 -> 서블릿(디스패처 서블릿..
- Total
- Today
- Yesterday
- useRef
- asac7기
- useContext
- useMemo
- asac#asac7기
- asac7
- git
- useReducer
- useState
- ssh
- asac7#asac
- useCallback
- Nginx
- useEffect
- useLayoutEffect
- memo
- ASAC
- react
- acac
- acas#acas7기
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |