Docker는 dotCloud의 제품입니다. docker는 원래 dotCloud 창립자 "Solomon Hykes"가 프랑스에 있을 때 시작한 내부 회사 프로젝트로 dotCloud의 다년간의 클라우드 서비스 기술을 기반으로 한 혁신으로 2013년 3월에 출시되었습니다. "Apache 2.0" 라이센스 계약은 오픈 소스이며 주요 프로젝트 코드는 GitHub에서 유지 관리됩니다.
이 튜토리얼의 운영 환경: linux7.3 시스템, docker 버전 19.03, Dell G3 컴퓨터.
Docker는 어느 회사의 제품인가요?
docker란 무엇입니까
Docker는 원래 dotCloud 창립자인 솔로몬 하이크스가 프랑스에 머물면서 시작한 사내 프로젝트였으며, dotCloud의 수년간의 클라우드 서비스 기술을 기반으로 한 혁신입니다. 2013년 3월 Apache 2.0 라이센스 계약에 따라 오픈 소스로 제공되었으며 주요 프로젝트 코드는 GitHub에서 유지 관리됩니다. Docker 프로젝트는 나중에 Linux Foundation에 가입하고 이를 홍보하기 위해 OCI(Open Container Alliance)를 설립했습니다.
Docker는 오픈 소스 이후 광범위한 관심과 논의를 받아왔습니다. 지금까지 GitHub 프로젝트는 46,000개의 별과 10,000개 이상의 포크를 초과했습니다. Docker 프로젝트의 인기에도 불구하고 dotCloud는 2013년 말에 이름을 Docker로 변경하기로 결정했습니다. Docker는 원래 Ubuntu 12.04에서 개발 및 구현되었습니다. Red Hat은 RHEL 6.5부터 Docker를 지원했으며 Google도 PaaS 제품에 Docker를 널리 사용했습니다.
Docker는 Google에서 출시한 Go 언어를 사용하여 개발 및 구현되었으며, Linux 커널의 cgroup, 네임스페이스 및 AUFS와 유사한 Union FS 및 기타 기술을 기반으로 운영 체제에서 프로세스를 캡슐화하고 격리하는 기술입니다. 수준. 격리된 프로세스는 호스트 및 기타 격리된 프로세스와 독립적이므로 컨테이너라고도 합니다. 초기 구현은 LXC를 기반으로 했으며, 0.7 버전부터 LXC를 제거하고 자체 개발한 libcontainer를 대신 사용했다. 1.11부터는 runC와 Containerd를 사용하도록 더욱 발전했다.
Docker는 컨테이너를 기반으로 파일 시스템, 네트워크 상호 연결, 프로세스 격리 등 모든 것을 더욱 캡슐화하여 컨테이너 생성 및 유지 관리를 크게 단순화합니다. Docker 기술은 가상 머신 기술보다 가볍고 빠릅니다.
아래 그림은 Docker와 기존 가상화 방법의 차이점을 비교합니다. 전통적인 가상 머신 기술은 하드웨어 세트를 가상화하고, 그 위에서 완전한 운영 체제를 실행한 다음, 컨테이너의 애플리케이션 프로세스가 호스트 커널에서 직접 실행되는 동안 시스템에서 필요한 애플리케이션 프로세스를 실행하는 것입니다. 자체 커널이 있고 하드웨어 가상화가 없습니다. 따라서 컨테이너는 기존 가상 머신보다 가볍습니다.
위 그림에서 볼 수 있듯이:
- Docker 컨테이너는 코드와 종속 리소스를 함께 패키지하는 데 사용되는 애플리케이션 계층 추상화입니다. 여러 컨테이너가 동일한 시스템에서 실행되어 운영 체제 커널을 공유할 수 있지만 각각은 사용자 공간에서 독립적인 프로세스로 실행됩니다. 컨테이너는 가상 머신에 비해 공간을 덜 차지하며(컨테이너 이미지 크기는 일반적으로 수십 메가바이트에 불과) 즉시 시작할 수 있습니다.
- 가상 머신(VM)은 서버를 전환하는 데 사용되는 물리적 하드웨어 계층 추상화입니다. 여러 서버로. 하이퍼바이저를 사용하면 단일 시스템에서 여러 VM을 실행할 수 있습니다. 각 VM에는 전체 운영 체제, 하나 이상의 애플리케이션, 필수 바이너리 및 라이브러리 리소스가 포함되어 있으므로 많은 공간을 차지합니다. 그리고 VM 시작도 매우 느립니다.
Docker 공식 웹사이트의 제목 사진을 찍고 이 부분을 요약하면 다음과 같습니다. Docker 비디오 튜토리얼
》위 내용은 도커는 어느 회사 제품인가요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

Linux에서 Docker를 사용하면 개발 및 배포 효율성을 향상시킬 수 있습니다. 1. Docker 설치 : 스크립트를 사용하여 Ubuntu에 Docker를 설치하십시오. 2. 설치 확인 : Sudodockerrunhello-World를 실행하십시오. 3. 기본 사용 : Nginx 컨테이너 생성 Dockerrun-Namemy-Nginx-P8080 : 80-Dnginx. 4. 고급 사용 : DockerFile을 사용하여 사용자 정의 이미지를 만들고 빌드 및 실행하십시오. 5. 최적화 및 모범 사례 : 다단계 빌드 및 dockercompose를 사용하여 Dockerfiles를 작성하기위한 모범 사례를 따르십시오.

Docker 모니터링의 핵심은 주로 CPU 사용, 메모리 사용, 네트워크 트래픽 및 디스크 I/O와 같은 지표를 포함하여 컨테이너의 작동 데이터를 수집하고 분석하는 것입니다. Prometheus, Grafana 및 Cadvisor와 같은 도구를 사용하면 컨테이너의 포괄적 인 모니터링 및 성능 최적화를 달성 할 수 있습니다.

Dockerswarm은 확장 가능한 고도로 컨테이너 클러스터를 구축하는 데 사용될 수 있습니다. 1) Dockers -Warminit을 사용하여 떼 클러스터를 초기화하십시오. 2) Swarm 클러스터에 가입하여 Dockers-Warmjoin-Token을 사용하십시오. 3) DockerserviceCreate-namemy-nginx-replicas3nginx를 사용하여 서비스를 만듭니다. 4) DockerstackDeploy-Cdocker-Compose.ymlmyapp을 사용하여 복잡한 서비스를 배포합니다.

Docker 및 Kubernetes를 사용하여 Enterprise Applications의 컨테이너 오케스트레이션을 수행하는 방법은 무엇입니까? 다음 단계를 통해 구현하십시오. Docker 이미지를 만들고 DockerHub로 푸시하십시오. Kubernetes에서 배포 및 서비스를 작성하여 응용 프로그램을 배포하십시오. 외부 액세스를 관리하기 위해 Insress를 사용하십시오. 성능 최적화 및 다단장 구성 및 자원 제약과 같은 모범 사례를 적용하십시오.

Docker FAQ는 다음 단계를 통해 진단 및 해결할 수 있습니다. 1. 컨테이너 상태 및 로그보기, 2. 네트워크 구성 확인, 3. 볼륨이 올바르게 장착되도록하십시오. 이러한 방법을 통해 Docker의 문제는 빠르게 위치하고 고정되어 시스템 안정성과 성능을 향상시킬 수 있습니다.

Docker는 DevOps 엔지니어에게 필수 기술입니다. 1. Docker는 포장 애플리케이션 및 컨테이너에 대한 종속성을 통해 격리 및 휴대 성을 달성하는 오픈 소스 컨테이너화 플랫폼입니다. 2. Docker는 네임 스페이스, 제어 그룹 및 연합 파일 시스템과 함께 작동합니다. 3. 기본 사용에는 컨테이너 생성, 실행 및 관리가 포함됩니다. 4. 고급 사용법에는 DockerCompose를 사용하여 다중 컨테이너 응용 프로그램을 관리하는 것이 포함됩니다. 5. 일반적인 오류에는 컨테이너 고장, 포트 매핑 문제 및 데이터 지속성 문제가 포함됩니다. 디버깅 기술에는 로그보기, 컨테이너 입력 및 자세한 정보보기가 포함됩니다. 6. 성능 최적화 및 모범 사례에는 이미지 최적화, 리소스 제약 조건, 네트워크 최적화 및 Dockerfile 사용을위한 모범 사례가 포함됩니다.

Docker Security 향상 방법에는 다음이 포함됩니다. 1.-캡 드롭 매개 변수를 사용하여 Linux 기능을 제한, 2. 읽기 전용 컨테이너 생성, 3. Selinux 태그 설정. 이러한 전략은 취약성 노출을 줄이고 공격자 기능을 제한함으로써 컨테이너를 보호합니다.

DockErvolumes는 컨테이너가 다시 시작, 삭제 또는 마이그레이션 될 때 데이터가 안전하게 유지되도록합니다. 1. 볼륨 생성 : dockervolumecreatemydata. 2. 컨테이너를 실행하고 볼륨을 장착하십시오 : Dockerrun-it-vmydata :/app/dateubuntubash. 3. 고급 사용에는 데이터 공유 및 백업이 포함됩니다.


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

WebStorm Mac 버전
유용한 JavaScript 개발 도구

맨티스BT
Mantis는 제품 결함 추적을 돕기 위해 설계된 배포하기 쉬운 웹 기반 결함 추적 도구입니다. PHP, MySQL 및 웹 서버가 필요합니다. 데모 및 호스팅 서비스를 확인해 보세요.

SublimeText3 Linux 새 버전
SublimeText3 Linux 최신 버전

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기
