본문 바로가기

전체 글89

2. 컨테이너 다루기 컨테이너 라이프사이클 Command Description Usage 1. docker pull 원격 리포지토리에 있는 이미지를 다운로드한다. docker pull repository[:tag] 2. docker run 이미지를 기반으로 컨테이너를 실행한다. docker run [option] repository:tag [command] [argument] 3. docker ps 실행 / 정지(-a)된 컨테이너 목록을 출력한다. docker ps [option] 4. docker logs 실행 중 발생한 표준출력, 표준 에러출력을 출력한다. docker logs [option] containerID|Name 5. docker kill / stop 컨테이너를 정지하거나 강제종료한다. docker kill/s.. 2021. 8. 15.
1. 도커와 쿠버네티스 개요 쿠버네티스란? 지속적 통합 (CI), 지속적 배포 (CD) 에 적합한 구조를 가진다. 무중단 배포 및 스케일 업/다운 클라우드와 on-premise 에서 같은 방식으로 사용할 수 있다. 일관된 인터페이스로 다룰수 있도록 설계되어 있기 때문이다. 마스터노드와 워커노드로 구성된다. 마스터노드 : 클러스터의 관리를 담당 워커노드 : 컨테이너화 된 애플리케이션을 실행한다. 컨테이너의 이해 불변의 실행환경 (Immutable Infrastructure) 제공 애플리케이션 실행에 필요한 Library, OS 등을 하나로 패키징하여 불변의 실행환경을 만들 수 있다. 기존에는 호스트 운영체제 위에 애플리케이션을 구동하였으나, 개발환경과 배포환경이 완벽히 같음을 보장할 수는 없었기에 오류가 생길 수 있었던 점을 해결할 .. 2021. 8. 13.
플라이급 패턴 (Flyweight Pattern) 사용 의도 객체의 공유를 통해, 인스턴스의 생성을 최적화합니다. 예시 레이싱 경주에서, 1000대의 자동차를 가지고 경기를합니다. 하지만 자동차의 인스턴스의 크기가 매우 크다. 자동차를 운전하는 운전수의 인스턴스는 크기가 작다. 위의 조건에서 객체의 공유를 통해 인스턴스의 생성을 최적화합니다. 구조 참여자 설명 Flyweight Flyweight 클래스들의 추상클래스 혹은 인터페이스입니다. ConcreteFlyweight Flyweight 를 상속받거나 구현한, 공유될 수 있는 객체들입니다. UnsharedConcreteFlyweight Flyweight 를 상속받거나 구현한, 공유하지 않는 객체들입니다. FlyweightFactory Flyweight 를 생성하는 팩토리입니다. Client 가 Flyw.. 2021. 7. 12.
퍼사드 패턴 (Facade Pattern) 사용 의도 한 서브시스템 내의 인터페이스 집합에 대해, 획인화 된 하나의 인터페이스를 제공하는 패턴이다. 요약 스프링을 개발하면서 지금껏 사용해 왔던, Service 하위에 Repository 에서 데이터를 가져오고, 이를 가공하는 등 하나의 API call 을 Facade Pattern 으로 볼 수 있다고 생각한다. 2021. 7. 10.