Docker 是一個開源的項目,旨在創建、部署和運行應用程序。其核心是一個 Docker 引擎,可以管理和運行 Docker 容器。Docker 容器是輕量級、可移植和自包含的應用程序包,其中包括代碼、運行時、系統工具、系統庫和設置。
相比于傳統虛擬化技術,Docker 容器具有更快的啟動時間、更小的映像文件、更簡單的管理和更高的可移植性。這些優勢使得 Docker 在云計算和 DevOps 中受到廣泛的應用。
// 一個簡單的 Dockerfile 示例 FROM ubuntu:latest LABEL maintainer="yourname@domain.com" RUN apt-get update && apt-get install -y python3 python3-pip WORKDIR /app COPY . /app RUN pip3 install -r requirements.txt EXPOSE 5000 CMD [ "python3", "app.py" ]
Dockerfile 是用于構建 Docker 映像的文本文件。Docker 映像是容器運行的基礎,Dockerfile 定義了構建映像的步驟和依賴關系。在上面的示例中,Dockerfile 從 Ubuntu 最新版作為基礎映像開始構建,安裝了 Python3 和 pip3,把當前目錄中的代碼復制到容器的 /app 目錄中,安裝了應用程序在 requirements.txt 中指定的 Python 包,并將容器的端口號設置為 5000。最后,在容器啟動時運行 app.py。
使用 Docker,可以通過 Docker Hub 下載其他人上傳的公共映像,或者自己構建自己的映像并進行自己的應用程序。隨著 Docker 生態系統的發展,越來越多的工具和平臺與 Docker 集成,使得 Docker 的應用場景更加廣泛。