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の実装手順

推薦する

要素ツリーコントロールは、ドロップダウンメニューとアイコンを統合します(ツリー+ドロップダウン+入力)

目次要件:実装手順:この記事では主に以下について説明します: カスタムツリーコントロール<el...

MySQLの論理アーキテクチャに関する深い理解

MySQL は現在、ほとんどの企業や事業体で使用されているデータベースです。MySQL が使用される...

WeChatアプレット開発で遭遇したことのない落とし穴のまとめ

目次getApp()ページエントリファイルの先頭に変数を定義しますwx.createSelector...

doctype のマークアップ検証

しかし最近、この方法を使用すると問題が発生することがわかりました。コードを参照してください。コードを...

CSS3で作られたレインボーボタンスタイル

結果: 実装コード: html <div class="buttons"&...

Linux FTP匿名アップロードとダウンロードが自動的に開始される問題を解決する

勉強や仕事で FTP サーバーを頻繁に使用する場合は、起動時に自動的に起動するように設定できます。設...

MySQL 5.7.24 のインストールと設定方法のグラフィックチュートリアル

MySQL は最も人気のあるリレーショナル データベース管理システムです。WEB アプリケーションに...

MySQL テーブルを返すとインデックスが無効になるケースの説明

導入MySQL InnoDB エンジンがレコードをクエリし、インデックス カバレッジを使用できない場...

ネイティブJSで禁止すべきメソッドの記述

目次ブロックレベル関数オブジェクトのプロトタイプを直接変更すると呼び出された人発信者評価ブロックレベ...

MySQLデータベースは何をするのか

MySQL は、スウェーデンの会社 MySQL AB によって開発されたリレーショナル データベース...

Nofollowはコメントやメッセージ内のリンクを本当に機能させる

コメントとメッセージはもともと、ウェブマスターがコミュニティと読者層を構築するための優れた手段でした...

ネイティブJavaScriptでカルーセルを実装する

この記事では、JavaScriptでカルーセルを実装するための具体的なコードを参考までに紹介します。...

よく使用される入力テキストボックスの内容は自動的に垂直方向に中央揃えされ、クリックするとデフォルトのプロンプトテキストは空になります。

3つの機能: 1. コンテンツの垂直方向の自動中央揃え2. デフォルトのプロンプトテキストは灰色で表...

MySQL 8.0 のメモリ関連パラメータの概要

理論的には、MySQL によって使用されるメモリ = グローバル共有メモリ + max_connec...

XHTML ドキュメントで JavaScript と CSS を正しく使用する方法

ますます多くのウェブサイトで、XHTML が HTML4 に取って代わって急速に普及しています。しか...