大多數使用 Docker 的 IT 專業人員都面臨 Docker 容器大小問題。 一個 Docker 鏡像的大小可以達到千兆字節。這會消耗系統上的大量存儲空間,並且難以升級和啟動容器。幸運的是,Linux/Mac 系統有免費的開源工具,可以保護和最小化你的 Docker 容器的大小高達 30 倍。

使用 Docker Slim 的原因

  1. 最小化容器的大小以減少存儲使用。
  2. 創建輕量級容器以加快啟動速度
  3. 減少錯誤

本文介紹如何安裝 Docker Slim 並使用它來最小化您的 Docker 容器。

安裝

Linux 和 UNIX 系統(包括 Mac)目前支持 Dockerslim。 您可以從以下位置下載 dockerslim 二進製文件 DockerSlimGitHub 存儲庫。 轉到下面的 GitHub 存儲庫鏈接,為您的系統安裝和下載最新的二進製文件。

DockerSlim GitHub 倉庫:https://github.com/docker-slim/docker-slim

此外,您可以使用 wget 命令下載最新的 Docker Slim 二進製文件。

$ wget https://downloads.dockerslim.com/releases/1.36.1/dist_linux.tar.gz

要提取下載的文件,請運行以下命令:

$ tar -zvxf dist_linux.tar.gz

解壓文件後,將二進製文件移動到 /usr/local/bin 目錄,如下所示:

$ sudo mv dist_linux/* /usr/local/bin

要驗證您的 Docker Slim 安裝,請運行以下命令:

$ which docker-slim

輸出:

使用指南中的有用命令和可選幫助運行 docker-slim。

$ docker-slim help

輸出:

DockerSlim 提供了一個非常方便的菜單式命令行。試用可用的命令 碼頭工人苗條 沒有討論。 在 DockerSlim 外殼中,鍵入: 幫助 在交互式提示下獲取幫助菜單。

輸出:

基本命令是:

Exit => 退出 Docker Slim shell

X-ray => 查看容器鏡像的內容並對 Dockerfile 進行逆向工程

version => 顯示 Docker Slim 和 docker 版本信息

分析 Lint => Dockerfiles 容器指令

準備一個容器來減肥

要創建一個纖薄的 Docker 容器,您需要使 Docker 映像在您的本地系統上可用。對於本文,我選擇了 httpd 映像。您可以根據需要選擇圖像。使用以下語法從 docker hub 拉取 docker 鏡像: 請注意,需要在您的系統上安裝 Docker 引擎和依賴項

句法:

$ docker pull <image name>
$ docker pull httpd

輸出:

驗證容器的輸出

提取圖像後,將其作為容器運行並檢查輸出。在這個例子中,我們暴露了 httpd docker 容器的 80 端口,並使用瀏覽器訪問了默認的 Apache 頁面。

$ docker run -d --name apache -p 80:80 httpd

輸出:

此外,要檢查 Docker 映像的大小,請運行以下命令

$ docker images

輸出:

使用 Docker Slim 構建鏡像

我已經提取了 Docker 映像並驗證了容器是否正常工作。然後使用 Docker Slim 構建優化後的鏡像。使用以下語法創建一個最小的 Docker 鏡像:

$ docker-slim build --target <image name>

例子:

$ docker-slim build --target httpd

輸出:

輸出顯示 Docker 映像的大小已從 138 MB 減少到 8.1 MB。這是原始圖像的 1 / 16.3。

檢查最終圖像

要查看最終圖像大小,請運行以下命令:

$ docker images

輸出:

構建鏡像以從 Docker Slim 運行容器

最後,從優化後的圖像創建一個容器並監控輸出。現在我們已經使用了 httpddocker 鏡像來最小化它,從最新的鏡像運行 httpd 容器。您可以相應地選擇圖像。

句法:

$ docker run -d --name <name of the container > -p <host port : container port> <image name>

例子

$ docker run -d --name apache -p 80:80 httpd.slim

在哪裡,

httpd.slim 是一個優化的 httpddocker 鏡像。

輸出:

您可以看到容器以優化的圖像啟動。在瀏覽器中瀏覽容器以查找輸出。

您可以看到 httpd docker 容器可以與最小化的 Docker 映像一起正常工作。

結論是

本文介紹瞭如何在您的 Linux 系統上安裝 Docker Slim,以及如何使用 Docker Slim 來優化和保護您的 Docker 容器。