>  기사  >  운영 및 유지보수  >  Docker에서 콘텐츠 독립성은 무엇을 의미합니까?

Docker에서 콘텐츠 독립성은 무엇을 의미합니까?

青灯夜游
青灯夜游원래의
2022-05-12 15:07:213473검색

콘텐츠 독립성은 언어에 관계없이 프로그램이 컨테이너에서 실행될 수 있으며 모든 페이로드와 해당 종속성을 캡슐화할 수 있음을 의미합니다. Docker에서는 특정 컨테이너 콘텐츠가 무엇이든 컨테이너의 표준 작업이 동일한 효과를 생성할 수 있습니다. 예를 들어 PHP 애플리케이션이든 MySQL 데이터베이스 서비스이든 컨테이너를 동일한 방식으로 업로드하고 시작할 수 있습니다. .

Docker에서 콘텐츠 독립성은 무엇을 의미합니까?

이 튜토리얼의 운영 환경: linux7.3 시스템, docker20 버전, Dell G3 컴퓨터.

도커란 무엇인가요?

Docker는 Go 언어를 기반으로 개발되었으며 Apache2.0 오픈 소스 계약을 준수하는 오픈 소스 애플리케이션 컨테이너 엔진입니다. Docker를 사용하면 개발자는 애플리케이션과 종속성 패키지를 휴대용 컨테이너에 패키징한 다음 가상화할 수도 있는 모든 Linux 시스템에 게시할 수 있습니다. Docker 컨테이너는 완전히 샌드박스 메커니즘을 사용하며 서로 인터페이스가 없으므로 컨테이너 간의 보안이 보장됩니다.

Docker는 2013년 초에 탄생했으며 현재 Community Edition(CE, Community Edition)과 Enterprise Edition(EE, Enterprise Edition)의 두 가지 버전이 있습니다. 그중 Docker Community Edition은 무료 오픈 소스로 개인 및 소규모 팀에게 이상적인 선택입니다. Docker Enterprise Edition은 유료이며 더 엄격한 요구 사항이 있는 상용 애플리케이션을 위한 기업 및 대규모 IT 팀에 특별히 제공됩니다.

Docker의 주요 기능

Content Agnostic

프로그램은 언어를 구분하지 않고 컨테이너에서 실행될 수 있으며 모든 페이로드와 해당 종속성을 캡슐화할 수 있습니다.

특정 컨테이너 내용이 무엇이든 컨테이너 표준 작업은 실행 후 동일한 효과를 낼 수 있습니다. 예를 들어 컨테이너는 PHP 애플리케이션이든 MySQL 데이터베이스 서비스이든 동일한 방식으로 업로드하고 시작할 수 있습니다.

하드웨어 불가지론

운영 체제 프리미티브(예: LXC)를 사용하여 콘텐츠 수정 없이 거의 모든 플랫폼(가상 머신, 베어 메탈, OpenStack, 공용 IaaS 등)에서 실행

격리 및 상호 작용

리소스, 네트워크 및 콘텐츠 격리, 종속성 지옥 방지

자동화

실행, 시작, 중지, 제출, 검색 등을 위한 표준 작업이 있으며 DevOps에 매우 적합합니다: CI, CD, 자동 확장, 하이브리드 Cloud

효율적

가벼워서 편견과 시작 페널티가 거의 없으며 빠른 이동과 운영이 가능합니다.

업무 분리

개발자는 코드에 대해 걱정하고 운영은 인프라에 대해 걱정

추가 기술 기능:

  • 파일 시스템 격리: 각 프로세스 컨테이너는 완전히 독립적인 루트 파일 시스템에서 실행됩니다.

  • 리소스 격리: CPU, 메모리 등과 같은 시스템 리소스는 프로세스 컨테이너에서 cgroup을 사용하여 서로 다른 위치에 할당됩니다.

  • 네트워크 격리: 각 프로세스 컨테이너는 자체 네트워크 공간에서 실행하기 위해 자체 가상 인터페이스와 IP 주소를 전달합니다.

  • 쓰기 중 복사: 복사를 통해 루트 파일 시스템을 생성합니다. 배포 속도가 매우 빠르고 메모리와 하드 디스크 공간이 매우 작습니다.

  • 로그: Docker는 실시간 검색 또는 일괄 검색을 위해 각 프로세스 컨테이너의 표준 스트림(stdout/stderr/stdin)을 수집하고 기록합니다.

  • 변경 관리: 컨테이너 파일 시스템의 변경 사항을 새 이미지(이미지)에 제출하고 재사용하여 더 많은 컨테이너를 만들 수 있습니다. 템플릿이나 수동 구성을 사용할 필요가 없습니다.

  • 대화형 셸: Docker는 가상 터미널을 할당하고 이를 일회성 대화형 셸 실행과 같이 모든 컨테이너의 표준 입력에 연결할 수 있습니다.

Docker는 일반적으로 다음 시나리오에서 사용됩니다.

웹 애플리케이션의 자동화된 패키징 및 릴리스

자동화된 테스트 및 지속적인 통합 및 릴리스

서비스 지향 환경에서 데이터베이스 또는 기타 백그라운드 애플리케이션의 배포 및 조정 ;

기존 OpenShift 또는 Cloud Foundry 플랫폼을 처음부터 컴파일하거나 확장하여 자체 PaaS 환경을 구축하세요.

추천 학습: "docker 비디오 튜토리얼"

위 내용은 Docker에서 콘텐츠 독립성은 무엇을 의미합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.