Dockerはクロスプラットフォーム機能を実現するためにnet5プログラムを導入

Dockerはクロスプラットフォーム機能を実現するためにnet5プログラムを導入

展開環境: ここでは docker コンテナ、Linux システム、VmWare 仮想マシンが使用され、MobaXterm ツールを使用して Linux システムへの端末接続が実現されます。

2. (環境準備) 仮想マシンを起動し、ターミナルを 192.168.20.128 に接続します (後でこのアドレスを使用して .NET5 プロジェクトに直接アクセスします)

Linux システムは、ifconfig を使用して IP アドレスを表示し、ホスト マシンで MobaXterm を使用します (MobaXterm の使用の詳細については、https://www.jb51.net/article/212323.htm を参照してください)。

3. .NET5プロジェクトを作成します。このプロジェクトはasp.net core mvcを作成します。

さらに、Dockerサポートを追加するにはプロジェクトを右クリックする必要があります(方法1)

プロジェクトを作成することもできます(方法2)

docker サポートを追加すると、プロジェクトは次のように Dockerfile を生成します (これはイメージのすべての依存環境を含むファイルです)

プロジェクトは、以下に示すようにローカルで開始されます。

4. Docker のインストールに関しては、非常に詳しい情報が記載されている公式 Web サイトに直接アクセスすることをお勧めします。

インストールアドレス(Linux システム): https://docs.docker.com/engine/install/centos/

5. インストールが成功したら、dockerを使用してプロジェクトをデプロイします。

(1)インストールが成功したら、次のようにdocker infoコマンドを入力してインストールが成功したことを確認します。

(2)プロジェクトをカスタムディレクトリにインポートします。ここでは、ホームディレクトリに.NET5フォルダを作成し、そのフォルダにプロジェクトを配置しました。

完了したら、次のように入力します: cd /home/NET5/DockerTest/

(3)プロジェクトイメージdocker build -t demoを生成します。

demo はイメージの名前です。demo の後の小数点を忘れないように注意してください。

イメージが正常に生成されたら、イメージを表示します: docker images

(4)先ほど生成したイメージでコンテナを生成し、プロセスを開始する(つまりプロジェクトを開始する)

docker run -d --name cdb -p 8089:80 demo--コンテナ名としてコンテナイメージcdbを生成するポートを指定してプロセスを開始します

ポート番号は8089、コンテナ名はcdbです。もちろん、指定したイメージ名demoに合わせて複数のコンテナ名を生成し、複数のプロセスを起動することもできます。各コンテナは互いに分離されています。

結果は次のとおりです。

このプロジェクトにアクセスするには、ホスト マシンを使用します。

192.168.20.128:8089 (正常にアクセス可能)

コンテナ情報の表示: docker ps (cdb は生成されたコンテナと関連するポート情報です)

次にコンテナの生成を続行し、先ほどのコマンド(cdb2 new container name)を引き続き使用します。

このポートプロセス 192.168.20.128:8090 の開始を続行します (通常どおりアクセスすることもできます)

docker ps -- コンテナ情報を表示する

docker stop 14e79874c983 --id=14e79874c983 のコンテナを停止します

docker rm 14e79874c983 -- id = 14e79874c983 のコンテナを削除します。 docker logs cyx2 -- cyx2 という名前のコンテナの印刷ログ情報を表示します。

付録関連のdockerコマンド操作ドキュメントこの兄弟は良いですhttps://www.cnblogs.com/DeepInThought/p/10896790.html、公式サイトも非常に充実しています

まとめると、最近 Docker を学習しています。この記事では、Docker コンテナーを使用した .Net5 プロジェクトの基本的な展開のみを示します。もちろん、まだ多くの欠点があります。ご質問がある場合は、お気軽にコメントしてアドバイスをお寄せください。

夜は少し眠いです。docker マウントとその他の関連操作についてもう少しお話ししようと思っていました。後で時間があるときに更新します。

上記は、Docker で net5 プログラムをデプロイしてクロスプラットフォーム機能を実現する詳細です。Docker で net5 プログラムをデプロイする方法の詳細については、123WORDPRESS.COM の他の関連記事に注目してください。

以下もご興味があるかもしれません:
  • Linux システム Docker への ASP.NET Core アプリケーションのデプロイのプロセス分析
  • Docker に .NET 5 をデプロイする方法
  • docker を使用して Asp.net コア アプリケーションをデプロイするための完全な手順
  • ASP.NET Core Docker デプロイメントの詳細
  • .Net6 プロジェクトを Docker にデプロイする

<<:  CSS3 を使用した SVG パス ストロークのアニメーション化入門チュートリアル

>>:  ウェブデザイナーが持つべき資質と能力

推薦する

ファイルアップロードスタイルの詳細を実装するjs

目次1. 概要2. オブジェクト作成のパラメータ3. 監視例4. 使用方法5. ソースコード1. 概...

Centos7 で yum を使用して Mysql5.7.19 をインストールする詳細な手順

Centos7 の yum ソースには、mysql の代わりに mariaDB が使用されているため...

HTMLの基本構造を包括的に理解する

HTML入門ハイパーテキスト マークアップ言語: ハイパーテキスト マークアップ言語ハイパーテキスト...

webpack と rollup を使用してコンポーネント ライブラリをパッケージ化する方法

序文以前、ローディングスタイルのコンポーネントを作成しました。コードの再利用性を実現するために、この...

MySQL データベースの制約とデータ テーブルの設計原則

目次1. データベースの制約1.1 はじめに1.2 制約の種類1.3 ヌルでない1.4 ユニーク1....

Navicat が MySQL にリモート接続するときに発生する 10060 不明エラーを解決する方法

はじめに:今日は、サーバー上のMySQLにリモート接続したいと思います。使用するソフトウェアはNav...

MySQL エラー: ロックを取得しようとしたときにデッドロックが見つかりました。トランザクションの解決策を再起動してください

問題を見つける最近、以前のデータを入力していたときに、プログラムが突然次のエラーを報告しました。 [...

ズームインとズームアウトの閉じるボタンを実現する CSS (サンプル コード)

この効果はブラウザ ページで最もよく見られます。まずは効果の画像をご覧ください。 上の図に示すように...

ReactのuseEffectクロージャの落とし穴についての簡単な説明

問題コードuseEffectによって発生したクロージャの問題コードを見てみましょう 定数 btn =...

JS配列メソッドsome、every、findの使用に関する詳細

目次1. いくつか2. すべての3. 見つける1. いくつかsome()メソッドは、指定された関数の...

MySql5.7.18 の文字セット構成の詳細なグラフィック説明

背景:かなり前(2017.6.5、記事にはタイムリーさがあり、特に使用されているツールは頻繁に更新さ...

JavaScript インスタンス オブジェクトでプロトタイプ メソッドをオーバーライドする方法の詳細

目次JavaScriptでは、通常、次のコードのようにクラスを簡単に定義できます。 var サンプル...

Vueは視覚的なドラッグページエディタを実装します

目次ドラッグアンドドロップの実装ドラッグイベントドラッグして開始リリースゾーンでの移動境界処理、角度...

docker を使用して Kong クラスター操作を構築する

docker コンテナの下に kong クラスターを構築するのは非常に簡単です。公式サイトの紹介も非...

Vue のローカルコンポーネントの紹介

Vueでは、ローカルコンポーネントを自分で定義(登録)することができます。コンポーネント名を定義する...