Dockerイメージ送信コマンドcommitの動作原理と使い方の詳細な説明

Dockerイメージ送信コマンドcommitの動作原理と使い方の詳細な説明

ローカルでコンテナを作成した後、このコンテナに基づいてローカル イメージを作成し、このイメージを Docker ハブにプッシュして、インターネット上でダウンロードして使用することができます。

では実際に実践してみましょう。

docker pull nginx:1.15.3 

コマンドラインを使用してコンテナを起動します。

docker run -d -p 1080:80 --name jerry-nginx nginx:1.15.3 

ローカルホスト:1080

コンテナのシェルに入ります:

docker exec -it jerry-nginx /bin/bash

この nginx イメージのデフォルトのホームページを表示します。

コンテナ内で wget を使用したいので、まずそれをインストールします。

apt-get アップデート && apt-get -y インストール wget 

wget コマンドを使用して、Nginx サーバーが Web ページを保存する場所に画像ファイルと HTML ファイルをダウンロードします。

wget --no-check-certificate -O /usr/share/nginx/html/evil.jpg https://github.com/raw/slvi/docker-k8s-training/master/docker/res/evil.jpg
wget --no-check-certificate -O /usr/share/nginx/html/index.html https://github.com/raw/slvi/docker-k8s-training/master/docker/res/evil.html

ページを更新すると、現在表示されているページは wget によってダウンロードされたページになります。

私たちは、このコンテナで見つかった変更を他のユーザーが使用できるようにするために、それを固めたいと考えています。

docker コミット jerry-nginx jerry-modify-nginx:1.0 

次のコマンドを使用して、1.0 を最新のタグとして設定します。

docker タグ jerry-modify-nginx:1.0 jerry-modify-nginx:latest

docker stop jerry-nginx を使用して古いコンテナを停止し、変更されたコンテナ jerry-modify-nginx を起動します。

docker history この新しいイメージの履歴を表示します:

この新しいイメージにラベルを付けるコマンドを実行します。

docker タグ jerry-modify-nginx:latest registry.ingress.shcw46.k8s-train.shoot.canary.k8s-hana.ondemand.com/jerry-modify-nginx:760d7ca6

タグ付けされたイメージをリモート エンドにプッシュします。

docker push registry.ingress.shcw46.k8s-train.shoot.canary.k8s-hana.ondemand.com/jerry-modify-nginx:760d7ca6 

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • コンテナDockerCommitを介してイメージを送信し、DockerPushでイメージをプッシュします。
  • Dockerイメージの作成Dockerfileとコミット操作
  • Docker 学習ノート: コンテナをイメージにコミットする方法
  • 既存のイメージを変更する Docker の詳細な説明 (コミット)
  • コミットコマンドを使ってイメージを作成するDocker学習の詳細な説明
  • Dockerイメージコミット操作の例と機能

<<:  MySQLデータベースをアンインストールするための完全な手順

>>:  MySQL 5.5 のインストールと設定のグラフィックチュートリアル

推薦する

大規模な MySQL テーブルに対する count() の実装を最適化しました

以下は、B+ ツリーのデータ構造と実験結果からの推測に基づいた私の判断です。間違いがあればご指摘くだ...

MySQL 5.7 の同時レプリケーションにおける暗黙のバグの分析

序文当社の MySQL オンライン環境のほとんどはバージョン 5.7.18 を使用しています。このバ...

Web面接でよくある質問:リフローとリペイントの原理と違い

目次ブラウザのレンダリングメカニズムリフローと再塗装リフロー逆流を引き起こす行為:再描画再描画を引き...

mysql5.7.17.msi インストール グラフィック チュートリアル

mysql-5.7.17.msiのインストール、スクリーンショットに従ってください、ステップバイステ...

MySQL 整合性制約の例の詳細な説明

この記事では、MySQL の整合性制約について説明します。ご参考までに、詳細は以下の通りです。メイン...

データベースインデックスの知識ポイントの概要

目次ファーストルックインデックスインデックスの概念インデックスファイルの構成インデックスの役割SQL...

要素を中央に配置するための配置方法 (Web ページ レイアウトのヒント)

ブラウザウィンドウの中央に要素を配置する方法まず、コード ブロックを示します。すでにコードを理解して...

MySQL インポート csv エラーの 4 つの解決策

これは今日私が踏んだ4つの落とし穴を記念したものです...落とし穴1:地元のせいエラー:エラー 39...

MySQL における between の境界と範囲の説明

境界範囲間のmysql間の範囲は両側の境界値を含む例: 3 から 7 までの id は、id >...

VMware仮想マシンブリッジによるインターネット相互接続を実現する方法

VMware をインストールして新しい仮想マシンを作成したら、オプション バーの [編集] - [仮...

JavaScript でシンプルな Web 時計を実装する

JavaScript を使用して Web ページ クロックを実装します。効果は次の図に示されています...

Linux crontab コマンドの使用

1. コマンドの紹介contab (cron テーブル) コマンドは、Windows のスケジュール...

dubbo での Zookeeper リクエストのタイムアウト問題: mysql8.0.15 に接続する mybatis+spring の構成

ここ2日間Javaを復習するつもりなので、練習にdubboを使ってショッピングモールプロジェクトを書...

1 つの記事で Node.js の非同期プログラミングを学ぶ

目次 はじめに 同期 非同期とブロッキング JavaScript のノンブロッキング コールバック ...

MySQLの日付加算と減算関数の詳細な説明

1. 追加時間()指定した秒数を日付に追加する select addtime(now(),1); -...