2024/04/05 3

Docker

1. Docker 1) 개요 Container 형 가상화 기술을 구현하기 위한 애플리케이션(Docker Engine) 과 이 애플리케이션을 조작하기 위한 명령행 도구(Docker CLI)로 구성되는 애플리케이션 같이 사용하는 프로그램 데이터를 다른 컨테이너 와 격리시키는 기능을 제공하는 애플리케이션 2) 특징 Micro Service 전환은 물론 DevOps, Testing 등 다양한 분야에서 활용 Linux Container 구현체의 사실상(de-facto) 표준 3) Docker는 Linux를 사용 Docker는 Linux를 필요로 함 Windows 나 Mac OS에서는 Docker를 구동할 수 있는지만 이 경우 내부적으로 Linux 가 사용되며 Container에서 동작하는 프로그램도 Linux 용..

DX Data School 2024.04.05

Container 와 Virtualization

1. Container 와 Virtualization 1) Virtualization(가상화) 서버, 스토리지, 네트워크 및 물리적 시스템에 대한 가상 표현을 생성하는데 사용할 수 있는 기술 가상화 소프트웨어는 물리적 하드웨어 기능을 모방해서 하나의 물리적 컴퓨터에서 여러 가상 시스템을 동시에 실행하는 것이 가능하도록 함 하드웨어 리소스를 효율적으로 사용해서 투자 대비 이익을 더 많이 얻을 수 있고 클라우드 컴퓨팅 서비스를 지원해서 조직의 인프라를 더욱 효율적으로 관리할 수 있음 ​ 2) 장점 효율적인 리소스 사용 자동화된 IT 관리 신속한 재해 복구 ​ 3) 가상화 서비스 서버 가상화 스토리지 가상화 네트워크 가상화 네트워크 기능 가상화 SDN (Software Defined Networking) 물리..

DX Data School 2024.04.05

CI/CD

1. CI/CD 1) 개요 CI/CD의 개념은 Continuous Integration (지속적인 통합), Continuous Delivery (지속적인 제공), Continuous Deployment (지속적인 패포) 애플리케이션 개발 단계를 자동화해서 애플리케이션을 보다 짧은 주기로 고객에게 전달하기 위한 방법 새로운 코드 통합으로 인해 개발 및 운영팀에 발생하는 문제를 해결하는 방법이다 지속적인 통합이 제대로 구현되면 애플리케이션 코드의 새로운 변경 사항이 정기적으로 빌드 및 테스트를 거쳐 공유 레포지토리에 병합되므로 여러 명의 개발자가 동시에 애플리케이션 개발과 관련된 코드 작업을 할 경우 서로 충돌하는 문제 해결 2) 지속적인 통합 (Continuous Integration) 개발팀이 작은 변경..

DX Data School 2024.04.05