DevOps/Docker2022. 5. 7. 01:34[Docker] Docker LifeCycle과 자주 사용하는 옵션

✔️ Docker의 LifeCycle create → start → (pause) → (unpause) → (kill) → stop → rm → run ----------> Docker run은 Docker create + Docker start 를 합친 것이다. Docker create - 컨테이너를 생성하며 Docker start - 컨테이너를 실행한다. 실행의 원칙은 app이 종료가 되면 컨테이너도 종료 되는 것이다. 여기서의 종료는 stop을 의미한다. pause, unpause 명령을 통해 컨테이너를 일시 중지, 중지 해제 할 수도 있다. puase를 시키면 사용하던 리소스들을 그대로 가지고 있다. kill은 프로세스를 종료시키는 것이며, 컨테이너를 강제종료시키는 것이다. vagrant@dock..

[Docker] Docker(도커)의 기본 명령어
DevOps/Docker2022. 5. 7. 00:27[Docker] Docker(도커)의 기본 명령어

✔️ Docker 버전 도커의 설치가 완료되었다면 도커의 버전을 확인해보자 docker version Client - 도커 명령어를 의미한다. - Docker CE : Community Edition - Docker EE : Enterprise Edition 20.10.14 : 2020년도 10월에 나온 버젼을 의미한다. Server - 도커 엔진 (도커 서비스가 실행하는 서버) ✔️ Docker 아키텍처 Docker 명령어(클라이언트) Docker host(서버) 서버에는 도커 데몬이 작동하고 있으며 도커 명령어가 도커 데몬에게 명령을 내리는 형태이다. 중요한 것은 레지스트리라고 하는 저장소인데, 우리가 ec2를 만들 때 AMI 이미지가 필요한 것 처럼 컨테이너를 만들기 위해서는 컨테이너용 이미지가 필..

[Docker] Monolithic 구조와 MicroService 구조
DevOps/Docker2022. 5. 6. 22:50[Docker] Monolithic 구조와 MicroService 구조

✔️ Monolithic Architecture Monolithic은 하나의 의미를 가진다. 어플리케이션의 구조에서 UI 서비스, 계정 서비스, 장바구니, 배송 등의 서비스가 하나로 만들어져 있다는 것이다. 어떤 프로그래밍 언어든 상관없이 모든 기능들을 하나의 구조로 만든 것을 모놀리틱 구조라고 한다. 모놀리스를 보통 구시대적인 방법으로 치부하기 쉬우나 이 방식은 지금도 상당히 많이 쓰는 일반적인 방식이다. 그림 상에 주황색 박스가 뒤로 겹쳐진 부분이 스케일링과 관련된 부분인데, 만약 서비스 중에 특히 사용자 트래픽이 몰리는 부분이 Shipping Service라고 해보자 서버의 다운을 막기 위해서는 스케일링이 필요할 것이다. 이럴 때는 다른 서비스의 스케일링은 필요없고 Shipping Service의 ..

쿠버네티스(Kubernetes)란 ?
DevOps/Kubernetes2022. 3. 14. 18:27쿠버네티스(Kubernetes)란 ?

들어가기 앞서 ✔️ 컨테이너 오케스트레이션(Container Orchestration)이란 ? 컨테이너 오케스트레이션이란 컨테이너를 쉽고 빠르게 배포/확장하고 관리를 자동화해주는 도구이다. 여러개의 서버에 컨테이너를 배포하고 운영하면서 서비스 간 연결을 쉽게 해주는 것이다. (서비스 디스커버리같은 기능을 이용) 서버마다 다른 이름을 짓고 개별적으로 관리하는 것이 아니라 Server 1, 2, 3, ...을 하나로 묶어 적당한 서버를 자동으로 선택해 어플리케이션을 배포하는 것이다. 부하가 생기면 컨테이너를 늘리고 일부 서버에 장애가 생기면 정상 동작 중인 서버에 다시 띄워 장애를 방지한다. 흔히 잘 알려진 오케스트레이션 툴로는 도커 스웜(Docker Swam), 쿠버네티스(Kubernetes), 아파치 메..

Docker(도커)란 무엇인가 ?
DevOps/Docker2022. 3. 7. 23:53Docker(도커)란 무엇인가 ?

✔️ Docker(도커)란 ? 리눅스 컨테이너를 기반으로 하여 특정한 서비스를 패키징하고 배포하는데 유용한 오픈 플랫폼이다. 인프라에서 어플리케이션을 분리하고 컨테이너로 추상화시켜 SW를 빠르게 제공할 수 있다. 하나의 호스트 OS 안에서 여러 컨테이너의 라이프 사이클을 관리하고 어플리케이션을 오케스트레이트된 서비스로 배포할 수 있다. ✔️ Docker의 구성 요소 컨테이너를 만들기 위해서 필요한 3가지 요소는 다음과 같다. ① Dockerfile 컨테이너를 만들기 위한 설명서 (요리로 치면 레시피) Copy files - 어플리케이션을 구동하기위해 꼭 필요한 파일들은 무엇이 있는지 Install dependency - 어떤 프레임워크나 라이브러리를 사용해야 하는지 Set environment varia..

image