概要
Spring Bootは、Springアプリケーションの開発プロセスを簡素化し、コンベンションファースト構成の原則に従って、さまざまなボックス外のフレームワーク構成を提供します。一方、Spring Bootには、独立して実行できる展開ユニットである実行可能なJARパッケージにコードを直接構築する機能もあります。上記の機能に基づいて、Spring Bootは一般に、マイクロサービス(マイクロサービス)をすばやく構築する機能を提供すると考えられています。
Webサーバー開発で最も人気のある用語の中で、マイクロサービスは間違いなく場所であり、インターネットバックエンドサービスアーキテクチャの進化における最も明るいテクノロジーの1つになりました。マイクロサービスの基本的なアイデアは、独立して開発、管理、加速できるビジネスドメインコンポーネントを中心にアプリケーションを作成することを検討することです。分散コンポーネントにマイクロサービスクラウドアーキテクチャとプラットフォームを使用すると、展開、管理、およびサービス機能が容易になります。サービスは分割され、小型化されているため、Dockerと組み合わせると、Dockerが1つのマイクロサービスを実行して実行すると、サービス間の結合が減少し、展開がより簡単になります。同時に、システムアーキテクチャはより明確になり、長期的な進化を促進します。このアイデアに基づいて、この記事の紹介慣行があります!
MavenベースのSpring BTプロジェクトを作成します
pom.xmlに依存関係を追加:
<parent> groupid> org.springframework.boot </groupid> <artifactid> spring-boot-starter-parent </artifactid> <バージョン> 2.0.0.Release </version> </parent> <deplency> depthency> <groupid> org.springframework.boot </groupid> <artifactid> spring-boot-starter-web </artifactid> </dependency> <dependency> groupid> org.springframework.boot </groupid> <artifactid> spring-boot-starter-test </artifactid> <scope> test </scope> </dentencies> </depencies>
スタートアップクラスにシンプルなRESTFULインターフェイスを追加するだけです。後続のブラウザを確認するには、 /helloインターフェイスにアクセスして、Hello Dockerをブラウザに返してください!こんにちは!
@RestControllerPublic class dockerdemospringApplication {public static void main(string [] args){springapplication.run(dockerdemospringapplication.class、args); } @RequestMapping( "/hello")public string hello(){return "hello!docker!"; }} dockerfileを書く
Spring BTプロジェクトのルートディレクトリにDockerFileを作成し、それを使用してDocker画像構造のオーケストレーションを完了します。
Mavenから:3.3.3ADD pom.xml/tmp/build/run cd/tmp/build && mvn -q依存関係:Resolveadd src/tmp/build/src #buildアプリケーションCD/TMP/build && mvn -q -dskiptests =真のパッケージ/#copy the parking regatifed restify resterm /#Cleaningコンパイルトレース&& CD/&& RM -RF/TMP/buildVolume/tmpexpose 8080Entrypoint ["java"、 "-djava.security.egd = file:/dev /./ urandom"、 "-jar"、 "/app.jar"]]
Docker's Worldを入力してください
docker build -t springindocker .docker run -d -p 8080:8080 springindockerこれは、Spring Bootに基づいてアプリケーションを正常にドッカーにしたことを意味します。
この記事は単なるデモですが、大規模なWebプロジェクトは、このような休憩サービスの多くにすぎないことに加えて、さまざまなインフラストラクチャ、データベース、通信、ミドルウェア、スケジューリングにすぎません。各子要素の開発は、ここでの基本的なプロセスにまだ従っています。
要約します
上記は、この記事のコンテンツ全体です。この記事の内容には、すべての人の研究や仕事に特定の参照値があることを願っています。ご質問がある場合は、メッセージを残してコミュニケーションをとることができます。 wulin.comへのご支援ありがとうございます。