Docker 是一款開源的容器化平臺,由三個核心要素組成。
第一個要素是 Docker 鏡像,鏡像相當于在 Docker 平臺上的應用程序。它是一個由多個只讀層組成的文件系統。這些層可以在不同的鏡像之間進行共享和重復利用。因此,當我們構建鏡像時,只需將不同的層組合成所需的最終鏡像即可。鏡像的構建可以基于 Dockerfile 文件或者已有的鏡像文件構建。
FROM ubuntu:16.04 LABEL maintainer="youremail@example.com" RUN apt-get update && apt-get install -y nginx COPY index.html /var/www/html/ EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]
第二個要素是 Docker 容器,容器是鏡像的一個實例,它運行在 Docker 平臺的虛擬環境中。容器可以被創建、啟動、停止和刪除。與虛擬機相比,容器更加輕量級、快速啟動和關閉。因為容器與宿主機之間共享內核,因此容器的性能非常高。
docker run -d -p 8080:80 nginx:latest
第三個要素是 Docker 倉庫,它類似于 Git 中的倉庫。Docker 倉庫用于存儲和分享 Docker 鏡像,它包含公共倉庫和私有倉庫兩種形式。Docker Hub 是 Docker 平臺上的公共倉庫,其中包含眾多 Docker 鏡像。用戶可以在 Docker Hub 上搜索、下載和上傳鏡像。
docker push username/myimage:tag docker pull username/myimage:tag
總之,這三個核心要素使得 Docker 具有了高效、輕量級、可移植的特性。通過構建和分享 Docker 鏡像,我們可以快速的部署應用程序。通過容器的增刪改查,我們可以有效的管理應用程序的運行。