Dockerに取り組んでいるITプロフェッショナルのほとんどは、Dockerコンテナーのサイズとほぼ同じサイズになると行き詰まります。 DockerイメージのサイズがGB単位になることがあります。これにより、システムの大容量ストレージが消費され、コンテナのアップグレードと起動が困難になります。幸い、Linux / Macシステムには無料のオープンソースツールがあり、Dockerコンテナのサイズを最大30倍まで保護して最小化できます。
DockerSlimを使用する理由
- ストレージの使用量を減らすためにコンテナのサイズを最小限に抑えるため。
- 起動を高速化するための軽量コンテナを作成するには
- バグを減らす
この記事では、DockerSlimをインストールし、それを使用してDockerコンテナーを最小化する方法について説明します。
インストール
Dockerslimは現在、Macを含むLinuxおよびUNIXシステムでサポートされています。 dockerslimバイナリファイルは、DockerSlimGitHubリポジトリからダウンロードできます。 以下に示すGitHubリポジトリのリンクに移動し、インストールに移動して、システムの最新のバイナリをダウンロードします。
DockerSlim GitHubリポジトリ:https://github.com/docker-slim/docker-slim
また、wgetコマンドを使用して、最新のDockerSlimバイナリファイルを次のようにダウンロードできます。
$ 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
DockerSlimのインストールを確認するには、次のコマンドを実行します。
$ which docker-slim
出力:
便利なコマンドとガイドのオプションヘルプを使用してdockerdocker-slimを実行します。
$ docker-slim help
出力:
DockerSlimは、非常に便利なメニュー方式のコマンドラインを提供します。使用可能なコマンドを試すには、 docker-slimを実行します 引数なし。 DockerSlimシェルで、「ヘルプ」と入力します インタラクティブプロンプトでヘルプメニューを表示します。
出力:
基本的なコマンドは次のとおりです。
終了=>DockerSlimシェルを終了します
Xray =>コンテナイメージの内部を表示し、Dockerfileをリバースエンジニアリングします
バージョン=>DockerSlimとdockerのバージョン情報を表示する
Lint=>Dockerfilesのコンテナ命令を分析します
容器をスリムにする準備をする
スリムなDockerコンテナーを作成するには、ローカルシステムでDockerイメージを使用できるようにする必要があります。この記事では、httpd画像を選択しました。要件に応じて画像を選択できます。次の構文を使用して、dockerhubから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
出力:
DockerSlimを使用してイメージを構築する
Dockerイメージがプルされ、コンテナーが正常に機能していることを確認しました。次に、DockerSlimを使用して最適化されたイメージを構築します。次の構文を使用して、最小化されたDockerイメージを作成します。
$ docker-slim build --target <image name>
例:
$ docker-slim build --target httpd
出力:
出力は、Dockerイメージのサイズが138MBから8.1 MBに縮小されたことを示しています。これは、元のイメージの16.3倍に最小化されています。
最終画像の確認
最終的な画像のサイズを確認するには、次のコマンドを実行します。
$ docker images
出力:
DockerSlimビルドイメージからコンテナを実行する
最後に、最適化された画像からコンテナを作成し、出力を監視します。最小化するために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イメージです
出力:
コンテナが最適化されたイメージで起動していることがわかります。ブラウザでコンテナを参照して、出力を見つけましょう。
最小化されたDockerイメージでhttpddockerコンテナが正常に機能していることがわかります。
結論
この記事では、LinuxシステムにDockerSlimをインストールする方法と、DockerSlimを使用してDockerコンテナーを最適化および保護する方法について学習しました。