Net Core実装プロセス分析のDoc​​kerインストールと展開

Net Core実装プロセス分析のDoc​​kerインストールと展開

1. Dockerのインストールと設定

#CentOS をインストールし、Docker パッケージを Extras ソフトウェア ソースに配置します。直接使用できます: yum install docker-io -y

#dockerのバージョンを表示する
ドッカー -v

#Dockerサービスを起動する systemctl start docker.service

#Dockerサービスを起動する systemctl enable docker.service

#Dockerサービスの起動ステータスを確認する systemctl status docker.service

#Docker サービスを再起動します systemctl restart docker.service

2. 新しいNet Coreプログラムを作成する

1. 新しい Net Core プロジェクトを作成します。注: Docker サポートは有効になっていません。

2. 新しく作成したプロジェクトを公開する(ターゲットランタイム:ポータブル)

3. 公開されたフォルダに新しいDockerfileファイルを作成します(サフィックスなし)

大まかな内容は以下のとおりです。

FROM microsoft/dotnet:2.1-aspnetcore-runtime //バージョンはWORKDIR /appと一致している必要があることに注意してください
COPY . . // 現在のディレクトリ内のすべてのファイル (.dockerignore によって除外されたパスを除く) をイメージ ファイルの /app ディレクトリにコピーします。
EXPOSE 5000 // ポート番号 (このポートへの外部接続を許可するには、コンテナ ポート 5000 を公開します。)
//EXPOSE 443 //Httpsポートが開かれます ENTRYPOINT ["dotnet", "DockerDemo5.dll"] //実行中のアセンブリを独自のものに変更します

3. 公開したプロジェクトをLinuxサーバー(CentOS)にアップロードする

1. プログラムのリリースディレクトリを入力します

#プログラムのリリースターゲットを入力します cd /data/web/mydocker

#画像ファイルを作成します (-t パラメータは画像ファイルの名前を指定するために使用され、コロンはその後のラベルを指定するために使用できます。PS: 最後のドットに注意してください)
ビルドは aspnetcoredocker1.1 です。 

#コンテナを生成します。実行するたびに新しいコンテナが作成されます (ここでの 5000:5000 は、コンテナのポート 5000 をホストのポート 5000 にマッピングし、最後にコンテナのポート番号を付けることを意味します)
docker run -it -p 5000:5000 aspnetcoredocker1.1
#docker run -it -p 5000:5000 aspnetcoredocker1.1:TAG // デフォルトのTAGは最新です

2. 直接アクセスするだけ

3. Docker コンテナを自動的に起動します (コンテナが終了したり電源がオフになったりした後、Docker はコンテナの作成時に --restart パラメータを使用して再起動戦略を指定できます)

# 起動戦略を設定する docker run --restart always -it -p 5000:5000 aspnetcoredocker1.1

#コンテナが作成されている場合は、コンテナの再起動ポリシーを変更します docker update --restart always 3ec28be7254a //コンテナID


# --restart 複数のパラメータ値を指定する場合は、コンテナを自動的に再起動しない場合はnoを選択します。(デフォルト値)
on-failure エラーが発生するとコンテナは終了し(コンテナの終了ステータスが 0 以外)、コンテナを再起動します。再起動の最大回数は次のように指定できます: on-failure:10
停止しない限り、コンテナが停止されているか、Docker が停止/再起動されている場合にのみコンテナを再起動します。手動停止はカウントされません。常時、コンテナが停止されているか、Docker が停止/再起動されている場合にのみコンテナを再起動します。

4. Docker関連コマンド

イメージファイルとコンテナコマンド

#すべてのDockerイメージを表示

#imageid docker rmi [IMAE_ID] でイメージを削除します 

#すべてのイメージを削除する sudo docker rmi $(docker images -q) 


#すべてのコンテナの実行ステータスを表示する docker ps -a  
dockerコンテナls -all

#コンテナID(インスタンス)でコンテナを削除する
ドッカーrm6f0c67de4b72 

#すべてのコンテナを削除する docker rm $(sudo docker ps -a -q)

コンテナログ

# 指定された時間後のログを表示し、最後の 100 行のみを表示します。
docker ログ -f -t --since="2019-06-08" --tail=100 コンテナ ID

#一定時間後にログを表示します:
docker ログ -t --since="2019-06-08" コンテナ ID

#一定期間のログを表示します:
docker ログ -t --since="2019-06-08" --until "2019-06-09" コンテナ ID

#過去 30 分間のログを表示します。
docker ログ --since 30m CONTAINER_ID

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

以下もご興味があるかもしれません:
  • .Net Core は Docker コンテナを展開します
  • ASP.NET Core 開発 Docker デプロイ
  • docker を使用して Asp.net コア アプリケーションをデプロイするための完全な手順
  • Asp.net Core Jenkins Docker のワンクリックデプロイの実装
  • .Net Core 自動デプロイ: Jenkins の docker バージョンを使用して dotnetcore アプリケーションをデプロイする方法
  • ASP.NET Core Docker デプロイメントの詳細
  • Docker を使用して ASP.NET Core アプリケーションをデプロイする

<<:  設定操作からMySQLへのNULLが見つからない問題を解決する

>>:  バックエンド管理システムを構築するためのvue-element-adminの実装手順

推薦する

HTML における if 判断の使用

Django Web開発の過程で、HTMLを書く際にバックエンドから同じ名前のリスト変数が渡されるが...

MySQLの指定順序ソートクエリについての簡単な説明

最近、空港や駅でフライト情報を表示するものと似た大型スクリーンディスプレイのプロジェクトに取り組んで...

Linux での umask の使用に関する詳細な説明

私は最近 Linux を学び始めました。Ma Ge の umask に関する Linux コースを読...

画像のシームレスなスクロールを実現する JavaScript タイマー

この記事では、画像のシームレスなスクロールを実現するためのJavaScriptの具体的なコードを参考...

Reactでプロキシを有効にする2つの実用的な方法

プロキシを有効にする2つの方法React には、直接使用できるカプセル化された Ajax リクエスト...

HTML/XHTML における img 画像タグの基本的な使用法の詳細な説明

画像タグは、Web ページに画像を表示するために使用されます。 HTML/XHTML 画像 <...

HTMLでは、全体的なスタイルとレイアウトを崩さずに、部分的に強制スクロールバーを使用できます。

まずはエフェクト画像を投稿します:全体的なスタイルとレイアウトが崩れないように、スクロール バーがロ...

JavaScript が Taobao の虫眼鏡効果を模倣

この記事では、淘宝虫眼鏡効果を実現するためのJavaScriptの具体的なコードを参考までに紹介しま...

blockquote タグの使用に関する注意

<br />セマンティクス化は一言で説明することはできないし、まだ公式かつ厳密な定義もあ...

Ubuntu 18.04 のログインループ/ブートインターフェイスで停止/グラフィカルインターフェイスに入ることができない問題を解決する方法

原因: NVIDIA グラフィック カード ドライバーが破損している解決:コマンドラインモードで再起...

N キロメートル以内のデータを検索する MySQL の簡単な例

地球の円周率と半径、検索ポイントの経度と緯度から、検索ポイントと検索データテーブル間の距離はNキロメ...

CentOS 7でsambaを使用してフォルダーを共有するための完全な手順

序文Samba は、サーバー プログラムとクライアント プログラムで構成され、Linux システム上...

jQueryはアコーディオン効果を実装します

この記事では、アコーディオンを実装するためのjQueryの具体的なコードを参考までに紹介します。具体...

Vueはドラッグアンドドロップまたはクリックで写真をアップロードする機能を実装しています

この記事では、ドラッグアンドドロップやクリックによる画像のアップロードを実現するためのVueの具体的...

Docker の Windows ストレージ パス設定操作

Windows 10 に Docker をインストールする場合、コンテナタイプを Linux コンテ...