本論文では、ゲートウェイ(オセロットの開発を使用して)統一マイクロサービスの展開など、ドッカーによって開発された.NETのコアマイクロサービスアーキテクチャを展開することによって、統一認証(IdentityServer4)、アプリケーションサービス(ASP.NETコアWebAPIの)。
この記事では、マイクロサービスのための命令を実行しない、フォローアップは、記録保管中の微小なサービスの私の理解反対になります。
A、ドッカー原理¶
特定のエラーとドッカーする最も簡単なと意識は「ドッカーは、仮想マシンでは非常に良いパフォーマンスです。」です
しかし、これは確かに言うことは間違っています。ドッカーがドッカーで、特に、多くのことを進んでいる、伝統的な仮想マシン技術に比べて、ホスト上の仮想ハードウェアのセットと、仮想オペレーティングシステムではなく、場所で直接実行プロセス内ドッカーコンテナへホスト上で(ドッカーが隔離されたファイル、ネットワークなどを行います)ので、ドッカーは「より速く実行軽いボリューム、さらに作成することができ、同じホストの下に多くの。」となることを
-
画像、コンテナ、リポジトリ:ドッキングウィンドウは、3つのコアの概念があります。
-
画像:私たちは、ミラーリングの概念には見知らぬ世界ではありません。しかし、ウィンドウの種類とは、ISOイメージに比べて、ミラーにドッカーは、(ソースパッケージgitリポジトリの差と圧縮と同様の)階層、再利用可能ではなく、一緒に積み重ねられた書類の簡単パイルであります。
-
コンテナ:鏡の支援なしでコンテナの存在が、彼はミラーランタイム(関係インスタンスとクラスと同様に)キャリアでした。独立したコンテナ港、プロセス、ファイル、および他の「スペース」を作成するために、ドッカーの仮想化技術に頼って、コンテナ分離することは、「コンテナ」と宛先ホストです。容器は、通信ポート、ボリューム、ホスト等との間のネットワークであってもよいです。
リポジトリ:リポジトリの名前、タグと全く同様にgit倉庫、倉庫ドッカー、。ローカルミラー完成建物後、倉庫をミラーリングすることによって分散されます。
一般的に使用されるドッカーハブは以下のとおりです。
https://hub.docker.com/(docker公式)
https://cr.console.aliyun.com/
二、Windowsのシステムドッカーのインストール¶
1、ハイパーV¶を有効にします
コントロールパネルを開き - [プログラムと機能 - 有効または無効にWindowsの特徴、Hyper-Vのを確認し、などにOKをクリックします。
2.ダウンロードしてインストールしDocker¶
ダウンロードします。https:ドッカーをダウンロードするには、アカウントを登録する//hub.docker.com/editions/community/docker-ce-desktop-windows、必要
ダウンロードしたら、直接インストール
ドッカーversionコマンドを表示します。
3、ミラーアドレスの変更¶
ドッカー公式ミラーは非常に遅くなりますので、私はアリ雲ミラーを修正しました
4、試験¶
全能のHelloWorld、ドッカーによって実行ハロー世界PowerShellの実行
ドッキングウィンドウのps -a //実行中のコンテナをチェックします
上記は、Windowsのプロセス全体がドッカー環境インストールされています
第三に、ドッカー環境をインストール¶
私は自由なサーバとAWSアプリケーションにあった、Ubuntuのシステムが使用されています。あなたはAWSサーバーには適用する必要がある場合は、AWSは、公式ウェブサイト登録アカウントを通じて適用することができ、あなたはクレジットカードの口座を記入する必要があり、HTTPS://portal.aws.amazon.com/billing/signup#/start
Ubuntuはドッカーをインストールするこの記事では、公式のチュートリアルへの直接参照されます。https://docs.docker.com/install/linux/docker-ce/ubuntu/
インストールは、好ましくは、rootアカウントに切り替えるにはインストールされている場合
Ubuntuは、リモートパテを通じて、特にあなたは、Baiduのを使用する方法
第四に、リリースおよび展開サービス¶
1、アプリケーションを公開、Dockerfileを作成する¶
これは私のプロジェクトディレクトリ、イメージがビルドにDockerfileによって構成されています。
VS2017サポート自動ビルドDockerfileファイル、右エンジニアリング - -Dockerのサポートを追加します。
ここに私のDockerfileの内容は以下のとおりです。
FROM マイクロソフトで/ aspnetcore :2.1 //ここベース画像は、動作環境の基盤.NETのコアであるWORKDIR / パブリッシュプロジェクトディレクトリの作成// COPYを。/ パブリッシュミラーに//カレントディレクトリをコピーされます、注意を払うCOPYは、別のスペースが続く。EXPOSE 80 //外国人は、コンテナ港80さらさエントリーポイント[ 「DOTNET」、「ZY.Gateway.dll」] //コンテナ内のサービス開始ミラーコマンドと同等のものを構築するために//ここを行ずつ実行されます
ディレクトリを公開するコンパイラの出力を設定する必要Dockerfile
上記はVSにより、出版社を設定した後
成功裏に掲載された後、我々はビン/ releaseディレクトリプロジェクトディレクトリの下でリリースした後、ファイルを見つけます
上記のリリースと同様の他の出版サービス
2、Ubuntuのにアップロードする¶
WinSCPのアップロードツールでは、3つのサービスがサーバーにアップロードされ、WinSCPのは、使用方法を、あなたは、Baiduのを見ることができます
図3に示すように、ミラーを構築¶
ドッカーのビルド- Tのapigateway 。//ビルド・ゲートウェイは、ミラードッカーのビルドを- Tのidentityserver - F / ホーム/ Ubuntuの/ dockerapp / identityserver / パブリッシュ/ Dockerfile 。//建設認証サービスミラードッキングウィンドウのビルド- T TESTSERVER - F / ホーム/ Ubuntuの/ dockerapp / TESTSERVER / パブリッシュ/ Dockerfile 。//ビルドのテストサービスミラー- トン//イメージ名- F ファイルパスdockerfile //
ドッキングウィンドウの画像//ビューミラー
4、コンテナを実行する¶
ミラーは、建物の前に完成された、このステップは、ミラーに従って構成されたコンテナを実行することです私たちのサービス稼働
ドッカーRUN - D - P- 5000 :80 - 名apigateway_containerのapigateway ドッカーRUN - D - P- 6000 :80 - 名identityserver_container identityserver ドッカーRUN - D - P- 7000 :80 - 名前testserver_container TESTSERVER //それぞれのサービスゲートウェイ、認定アップ実行されるサービス・コンテナ検査サービス、{}コンテナ港:-pポートマッピング、ポート{ホスト}を実行しているバックグラウンドプロセスを保つdは- //を
コンテナのドッキングウィンドウのps -aコマンドの動作を確認
ゲートウェイサービスを設定する場合ドッカーは、インストール時にゲートウェイIP 172.17.0.1が作成されます、あなたはポートフォワーディング172.17.0.1を行うことができ、コンテナとコンテナの間のネットワークアクセスを必要とするだろう。
あなたは、gatewayコマンドをdocker0見ることができます
APIゲートウェイルーティング転送構成
5、サービスを呼び出す¶
ドッカーが運営するサービスを呼び出すことによってポストマンは、APIゲートウェイアクセストークン認証サービスを介して取得します
¶概要
ドッキングウィンドウ全体のインストール、サービスリリース、パッケージミラー、完全にコンテナを実行します。
全体のプロセスはコヒーレントではないですが、私はピットの多くを踏ん、またピットにステッピングの過程を理解する上で多くのことを学びました。