SpringBoot でマイクロサービスを構築するために Docker を使用した実際の記録を分析する

SpringBoot でマイクロサービスを構築するために Docker を使用した実際の記録を分析する

それは何ですか?

Spring Boot は、Spring オープンソース組織のサブプロジェクトであり、Spring コンポーネントのワンストップ ソリューションです。Spring の使用の難しさを簡素化し、複雑な構成を省き、開発者がすぐに使い始められるようにさまざまなスターターを提供します。


なぜそれを使うのですか?

5つの利点:

1. 開始依存関係 公式には多数の開始依存関係が統合されており、プロジェクトの構築作業が簡素化されます。同時に、開始依存関係は信頼性の高い依存関係管理を提供し、問題のあるバージョンや依存関係の競合がプロジェクトに持ち込まれるリスクを軽減します。

2. 自動構成では、コンポーネントのスキャンと自動構成がオンになります。 exclude パラメータを使用して特定の自動構成を無効にします。

3. アプリケーション監視 Spring Boot 監視の中核は、spring-boot-starter-actuator 依存関係です。依存関係を追加すると、Spring Boot は、jvm 監視、クラス ローディング、ヘルス監視などの一般的な監視をデフォルトで構成します。 Actuator プラグインは、SpringBoot によってネイティブに提供されるサービスです。エンドポイント ルーティングを公開することで、アプリケーション内の多くのエンドポイント情報を出力するために使用できます。

4. 独立した操作 SpringBoot には Tomcat コンテナが組み込まれており、実行するメインメソッドを直接実行できます。プロジェクトのデプロイメントは jar ファイルにパッケージ化でき、java -jar コマンドを実行してサーバー上でサービスを実行できます。

5. ホットデプロイメントプロジェクトの開発中、ページデータやデータ構造は頻繁に変更されます。変更の効果を表示するには、アプリケーションを再起動して変更の効果を確認する必要があります。実際には、再コンパイルして新しいクラスファイルを生成します。このファイルにはコードに対応するさまざまな情報が記録され、その後、クラスファイルは仮想マシンの ClassLoader によってロードされます。

ホットデプロイメントはこの機能を活用します。クラスファイルが変更されたことを検出すると、ファイルをロードするための新しい ClassLoader が作成されます。一連のプロセスの後、結果が表示されます。


場合

1. Springbootマイクロサービスを開発する

2. Springbootアプリケーションをパッケージ化する

パッケージには一般的に2つの形式があり、この場合はjarを使用します
戦争移行トムキャット
jar メインストリーム jdk

3. プロジェクトをパッケージ化する

aliyun-sdk-oss-2.6.1.jar

4. サーバーにDockerfileディレクトリを作成する

mkdir /root/springboot

このディレクトリにjarパッケージをアップロードし、Java環境イメージopenjdk /root/springbootをロードします。

ここに画像の説明を挿入

Dockerfileを作成する
vim Dockerファイル

openjdk:8-jre から
ワークディレクトリ /app
aliyun-sdk-oss-2.6.1.jar app.jarを追加します。
エクスポーズ8080
エントリポイント ["java","-jar","app.jar"]

5. イメージを構築する
ビルドを実行します。

ここに画像の説明を挿入

6. コンテナを実行する
docker run -d -p 8081:8080 --name registry1 app1 bash
コンテナを表示します:

ここに画像の説明を挿入


docker と SpringBoot を使ってマイクロサービスを構築した実践記録の分析に関するこの記事はこれで終わりです。docker と SpringBoot を使ったマイクロサービスの構築に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Springboot マイクロサービス パッケージング Docker イメージ プロセスの分析
  • SpringBoot+SpringCloud ユーザー情報マイクロサービス配信実装分析
  • SpringBoot統合gRPCマイクロサービスエンジニアリング構築実践法

<<:  HTML 適応テーブル方式

>>:  MySQL データベースの最適化に関する 9 つのヒント

推薦する

...

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

この記事では、MySQL 8.0.15のインストールと設定方法を参考までに紹介します。具体的な内容は...

この記事ではCSSボーダーの使い方を説明します

境界線のスタイルborder-style プロパティは、表示する境界線の種類を指定します。 bord...

CSSスクロールバースタイル設定の実装

Webkit スクロールバー スタイルのリセット1. スクロールバーには、スクロールバー ボタンとト...

LinuxサーバにおけるNginxとApacheの共存の実装方法の分析

この記事では、Linux サーバー上で Nginx と Apache の共存を実装する方法について説...

Ubuntu のインストール グラフィック ドライバーと Cuda チュートリアル

目次1. 元のドライバーをアンインストールする2. 新しいグラフィックカードドライバーをダウンロード...

JavaScript コードベースをよりクリーンにする 5 つの方法

目次1. 短絡や条件文の代わりにデフォルトのパラメータを使用する2. 複数の条件の処理3. スイッチ...

CSS3 境界効果

CSSとは# CSS (Cascading Style Sheets の略) は、「カスケーディング...

JavaScript の基本変数

目次1. 変数の概要1.1 変数のメモリへの保存1.2 変数の使用1. 変数を宣言する2. 譲渡3....

MySQL グリーン解凍バージョンのインストールと設定手順

手順: 1. MySQLデータベースをインストールする1. MySQL-5.6.17-winx64....

HTMLからReactを実装する方法を教えます

ReactとはReact は、効率的で高速なユーザー インターフェイスを構築するためのシンプルな J...

CentOS7 は rpm を使用して MySQL 5.7 をインストールするチュートリアル図

1. 4つのrpmパッケージをダウンロードする mysql-コミュニティクライアント-5.7.26-...

Docker を使用した RabbitMQ 環境のデプロイの詳細な紹介

前提条件: Dockerはすでにインストールされています1. 画像を見つける(方法は2つあります) ...

Linux で crond ツールを使用してスケジュールされたタスクを作成する方法

序文Crond は Linux のスケジュール実行ツール (Windows のスケジュールされたタス...

MySQL で二重引用符の位置が誤っていたために起きた殺人事件の詳細な分析

1. はじめに最近、開発者が誤ってデータを削除したり更新したりするケースがよくあります。今回もまた問...