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

推薦する

CSS3 における擬似クラスの一般的な使用法の詳細な説明

before/after 疑似クラスは、要素内に 2 つの追加タグを挿入するのと同じです。最も適した...

jsはブラウザを閉じるときにアカウントのログアウトを処理します

目次古典的なアプローチ質問その他の質問注意が必要な問題古典的なアプローチご存知のとおり、アカウントの...

Tomcat サーバーが tomcat7w.exe を開けない場合の解決策

今日、Tomcat サーバーの設定時にちょっとした問題が発生したので、参考までにいくつかご説明したい...

JS でオブジェクトが空オブジェクトかどうかを判断する 5 つの方法

1. jsonオブジェクトをjson文字列に変換し、文字列が「{}」であるかどうかを判断します。 v...

SQL インジェクションの詳細

1. SQL インジェクションとは何ですか? SQL インジェクションは、入力パラメータに SQL ...

リンクをクリックしたときにファイルのダウンロードダイアログボックスをポップアップ表示するには、HTML で href を使用します。

今日、新しい技を学びました。あまりやったことがなかったので、今まで知りませんでした...目的: リン...

Docker コンテナのタイムゾーン エラーの問題

目次背景質問問題分析と解決策新たな問題問題分析と解決策背景node-schedule スケジュール ...

Vueでフォーム検証を実装する方法

1. インストールと使用まず、Vue プロジェクトにインストールします。 npm インストール --...

一般的なDockerコマンドの概要

Dockerのインストール1. 要件: Linuxカーネルバージョン3.10以上 表示: uname...

MySQL最新バージョン8.0.17解凍版インストールチュートリアル

個人的にはインストール版よりも解凍版の方がインストールしやすいと思います。早速、解凍版のインストール...

Javascriptのクロージャとアプリケーションの詳細な説明

目次序文1. クロージャとは何ですか? 1.1 クロージャは条件コードを満たす1.2 クロージャ生成...

Windows での MySQL データベースのマスター/スレーブ構成チュートリアル

WindowsでMySQLデータベースのマスターとスレーブを構成する詳細なプロセスは次のとおりです。...

MySQLオンラインデッドロック分析練習

序文MySQL を学習する際に、MySQL のロック メカニズムについて簡単に理解したことがあると思...

Vueは完全な選択機能を実装しています

この記事の例では、完全な選択機能を実装するためのVueの具体的なコードを参考までに共有しています。具...

ブラウザタブの左端に表示されるウェブサイトのアイコンを設定します

この文の目的は何ですか?コードをコピーコードは次のとおりです。 <link rel="...