Dockerを使用すると、特定のアプリケーションと依存関係を含むカスタムで一貫性のある環境を簡単に開発およびデプロイできます。 DockerはこれらのコンパイルをImagesと呼びます。 Dockerイメージは、プライベートな場所または公式リポジトリであるDockerHubからホストおよび取得できます。
このガイドは、Dockerの概念に関する一連の紹介の一部です。このガイドでイメージを作成するためのコマンドは、前のガイド「コンテナー展開用のイメージをインストールおよびプルする方法」に基づいています。 Dockerとコンテナーの詳細については、コンテナーに関するガイドをご覧ください。
Dockerイメージを作成する
最新のUbuntuDockerイメージに基づいて新しいローカルイメージを作成します。リポジトリにはすでに多数のLAMPスタックイメージがありますが、このガイドでは、プロセスの例として1つ作成します。
-
最新のUbuntuイメージをプルします:
docker pull ubuntu
-
LAMPスタックをUbuntuに追加できるように、新しいコンテナーを作成します。この例では、コンテナに
lamp-server-template
という名前を付けています。bash
を追加します 変更を続行するためにコンテナに入るためのdockerコマンドのオプション:docker run --name lamp-server-template -it ubuntu:latest bash
-
lamp-server
をインストールします コンテナ内のメタパッケージ:apt-get install lamp-server^
このアップグレードとインストールには、標準サーバーで作業している場合よりも時間がかかります。 LAMPスタックのインストール中に、MySQLrootユーザーのパスワードを作成するように求められます。インストールが完了したら、コンテナを終了します:
exit
-
docker ps -a
を使用します 使用可能なすべてのコンテナを一覧表示するには:
イメージへの変更のコミット
イメージへの変更をコミットするには、最初にコンテナIDが必要です。上記の例と同様に、docker ps -a
コマンドはIDをd09dd0f24b58
としてリストします 。新しい画像にlamp-server-template
という名前を付けます 次のコマンドで変更をコミットします:
docker commit d09dd0f24b58 lamp-server-template
docker images
を実行する場合 コマンドを実行すると、新しい画像lamp-server-template
が表示されます リストされています。
バージョン管理のために画像にタグを付ける
Docker Hubからイメージをプルダウンすると、Status
行には画像タグが含まれます ここに示すように:
Status: Downloaded newer image for ubuntu:latest
Dockerタグは、使用しているバージョンまたはリリースを知るための簡単な方法です。これは、ベースイメージから新しいイメージを作成する場合に特に便利です。たとえば、さまざまなイメージを作成するためのベースとして使用するUbuntuイメージがある場合、Dockerタグは違いを追跡するのに役立ちます。
lamp-server-template:v1.8.10.2017
lamp-server-template:v2.8.10.2017
lamp-server-template:v3.8.10.2017
-
docker commit
を使用して画像タグを作成します 。上記のタグの例を使用して、新しい画像にバージョン番号と日付のタグを付けます。docker commit d09dd0f24b58 lamp-server-template:v1.8.10.2017
-
docker images
を実行します 関連付けられたタグとともに作成された新しい画像を表示するには:
画像をDockerHubにプッシュ
-
イメージをDockerHubにプッシュする前に、説明とフルネーム(
FULL NAME
)を追加します この例では)、およびDocker Hubユーザー名(USERNAME
)docker commit
で :docker commit -m "Added LAMP Server" -a "FULL NAME" d09dd0f24b58 USERNAME/lamp-server-template:v1.8.10.2017
-
これが完全にタグ付けされたら、ログインしてDockerHubにプッシュします。
docker login
-
DockerHubのクレデンシャルの入力を求められます。認証が成功すると、
Login succeeded
が表示されます 。これで、次のコマンドを使用してイメージをハブにプッシュできます:docker push lamp-server-template:v1.8.10.2017
-
ブラウザを開き、Docker Hubアカウントにログインして、メインリポジトリに移動します。新しい画像が一覧表示されます。画像をクリックしてから、タグをクリックします タブで追加されたタグを確認します:
新しいイメージの作成、イメージの変更、変更のコミット、イメージのタグ付け、完全なイメージのDocker Hubへのプッシュは、すべてLinodeから直接処理されます。
詳細情報
このトピックの詳細については、次のリソースを参照してください。これらは有用であることを期待して提供されていますが、外部でホストされている資料の正確性や適時性を保証することはできません。
- Docker Docs
- DockerTryitチュートリアル
- DockerHub