Dockerパッケージイメージの実装と構成の変更

Dockerパッケージイメージの実装と構成の変更

最近、Docker の学習や実際の運用で多くの問題に遭遇したので、それを記録するためにブログを書きました。

インストール

Windows版をインストールしましたDocker デスクトップは、Windows 上で Docker を使用するのに非常に面倒で、いくつかの設定を行う必要があるため、Windows 上に Docker デスクトップをインストールします。

インストールが完了したら、通常は管理者として実行できます。「Dockerアクセス​​が拒否されました」というエラーメッセージが表示されて開けない場合は、コンピューターの現在のユーザーを追加する必要があります。 docker-users ユーザー グループ内。

ここに画像の説明を挿入

コマンドライン ツールを開き、次のコマンドを入力して、Docker が正常にインストールされているかどうかを確認します。

ここに画像の説明を挿入

hello-world を実行することもできます:

ここに画像の説明を挿入

パッケージ画像

パッケージングコマンドはdocker buildではこれに加えて、 Dockerfile ファイルやコマンドライン パッケージングについては紹介しませんが、Docker という vscode プラグインを共有します。

ここに画像の説明を挿入

インストール後、サイドバーに小さなクジラが表示され、Docker Desktop が正常にインストールされていれば、コンテナのステータスとイメージを確認できます。

ここに画像の説明を挿入

次に、Dockerfile ファイルを右クリックして、「イメージのビルド」をクリックします。イメージの名前を入力するように求められたら、Enter キーを押します。

ここに画像の説明を挿入

コンテナを実行して環境変数を追加する

プロジェクトの通常の動作は、環境変数に依存することがあります。 -e ディレクティブは以下を追加します:

docker run -p 4000:4000 -e env1=xxxx -e env2=yyyy イメージID

コンテナを実行し、コンテナ名をカスタマイズする

hello-world を 2 回実行し、docker desktop を開きます。コンテナ名は毎回ランダムに割り当てられているようです。

ここに画像の説明を挿入

使用できる–name はコンテナの名前を指定します:

docker run --name hello hello-world

実行結果:

ここに画像の説明を挿入

Docker ホストの変更

docker runを使用して新しいコンテナを実行するときは、パラメータを渡します–add-host は、ドメイン名と IP 情報をコンテナの /etc/hosts ファイルに追加します。

docker run -p 8080:8080 --add-host=ホスト名:127.0.0.1 イメージID

画像をローカルにエクスポートする

プロジェクトを開発してイメージにパッケージ化した後、運用・保守やバックエンド担当者向けに展開してテストする必要があるかもしれません。 save -o コマンドはイメージをエクスポートします。

docker save -o .\saved path\image file name 画像の例:
dicker save -o .\Desktop\hello.tar hello-world

個人的にはdocker hubを使った方が便利だと思います!

Docker のパッケージ イメージと構成の変更に関するこの記事はこれで終わりです。Docker のパッケージ イメージと構成に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Dockerイメージ構築原理の分析(Dockerをインストールしなくてもイメージを構築できる)
  • Docker のインストールと構成イメージの高速化の実装
  • Docker ロード後にイメージ名が none になる問題の解決方法
  • Dockerでイメージ情報を表示する方法
  • Dockerを使用してクローンリポジトリを使用してGitイメージを構築する
  • Docker イメージのダウンロードが遅すぎる場合の解決策

<<:  初心者がHTMLタグを学ぶ(3)

>>:  Echatsチャートの大画面適応を実装する方法

推薦する

ウェブ開発で遭遇した問題と経験

<br />以下は開発中に遭遇した問題と、そこから得た経験です。デバッグに時間がかかりま...

CSS が最初のサイクルで画像を読み込むために @keyframes を使用するときに発生するホワイトギャップの問題 (フラッシュ画面) をすばやく解決します。

問題の説明: CSS アニメーション プロパティを使用すると、ループが最初に読み込まれたときに白いギ...

CSS スタイルの競合を解決するいくつかの方法 (要約)

1. セレクターを調整するコンビネータを使用すると、セレクターの説明をより正確に記述できます (C...

フロントエンドJavaScriptは関数のカリー化を完全に理解している

目次1. カレーとは何か2. カレーの用途3. カリー化ユーティリティ関数をカプセル化する方法 1....

Mysql マスタースレーブ同期構成の実践の詳細な説明

1. はじめに以前、「MySQL マスター スレーブ同期の原理」という記事を書きました。この記事を読...

MYSQLの主キー制約とユニーク制約の違いについて簡単に説明します。

目次主キー制約ユニーク制約主キー制約PRIMARY KRY 主キーは一意です。テーブルには主キーを ...

MySQL の一般的な日付比較および計算関数

MySql での時間比較の実装unix_timestamp() unix_timestamp 関数は...

Ubuntu 18.04 で MySQL のインストール時にパスワードが要求されない場合の解決方法

Ubuntu 1804 への MySQL 5.7 のインストールについて詳しく紹介します。 MySQ...

この記事ではJavaScriptの基本であるディープコピーとシャローコピーについて説明します。

目次浅いコピーディープコピー補充する要約するコピー(クローン、複製などとも呼ばれる)ですが、ディープ...

mysql8.0.11データディレクトリ移行の実装

mysql のデフォルトのストレージ ディレクトリは/var/lib/mysql/です。以下は、デフ...

yum 経由で CentOS に PHP をインストールするチュートリアル

まず、yumを使ってCentOSにPHPをインストールする方法を紹介します。 1. PHPのyumソ...

中国の専門ではない:文化の違いの中でのウェブ開発

Web デザインと開発は大変な作業なので、少数の人だけを対象に設計しないでください。これは外国人が...

https暗号化アクセス用にnginxを設定するための詳細なチュートリアル

環境: 1 CentOS Linux リリース 7.5.1804 (コア)ファイアウォールと sel...

フロントエンド開発者に何百万ドルもの価値をもたらす 10 のスキル

フロントエンド開発者が習得する必要のあるスキル。これらのスキルにより、フロントエンド開発者の価値は数...

プライベートDockerリポジトリであるHarborをインストールするための詳細な手順

Harborのインストールは非常に簡単ですが、Dockerログインで行き詰まってしまいました。このブ...