背景 最近、Docker 初心者の友人から、毎回プロジェクト構成ファイルにハードコーディングしてサービス イメージをビルドし、一連のプロセスを経てパッケージ化して公開し、構成を更新するのではなく、 シナリオ データベース構成項目を含む Springboot プロジェクトがあり、異なるデータベース テスト環境 (DEV\SIT\UAT) に複数のデータベース IP があるとします。同じ Springboot プロジェクト イメージを使用する場合は、いつでもデータベース構成を切り替えることができます。つまり、Springboot アプリケーションのデータベース構成は、ハードコードされるのではなく、外部から渡す必要があります。 Springboot アプリケーションには次のようなデータベース構成があります。 spring.datasource.url = jdbc:mysql://192.168.0.11:3306/db?useUnicode=true&characterEncoding=utf8 #データベースユーザー名を設定する spring.datasource.username = sa #データベースパスワードを設定する spring.datasource.password = sa 解決
次に、Springboot構成ファイル内のspEL式でデータベース構成を置き換えます。 # データベースリンクを構成する spring.datasource.url = jdbc:mysql://${DB_HOST}:${DB_PORT}/${DB_NAME}?useUnicode=true&characterEncoding=utf8 #データベースユーザー名を設定します spring.datasource.username = ${DB_USER} #データベースパスワードを設定する spring.datasource.password = ${DB_PASSWORD} バージョン: '3' サービス: ウェブ: 再起動: 常に 依存: -db イメージ: springboot-app-image 建てる: 。 ポート: - 8080:8080 環境: - DB_HOST=192.168.0.11 - DB_PORT=3306 - DB_USER=ルート - DB_パスワード=123456 - DB_NAME=db ネットワーク: - クレジットファシリティネット 展開する: モード: 複製 レプリカ: 3 再起動ポリシー: 条件: 失敗時 遅延: 5秒 最大試行回数: 3 アップデート構成: 並列処理: 1 遅延: 10秒 このようにして、Springbootアプリケーションはコンテナサービスを起動するときにデータベース構成を動的に取得できます。 Docker が Springboot プロジェクトに動的にパラメータを渡す方法についてはこれで終わりです。Docker Springboot の動的パラメータ渡しの詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: Vue の計算プロパティとプロパティリスニングについての簡単な説明
>>: MySQLデータ行と行オーバーフローのメカニズムの詳細な説明
ネットフィルターNetfilter は、パケット フィルタリング、転送、およびアドレス変換 NAT ...
この記事では、例を使用して MySQL 一時テーブルの使用方法を説明します。ご参考までに、詳細は以下...
MySQL の mysql 5.7.18 zip バージョンは、クリックして次のステップをクリックし...
MySQL パフォーマンスの最適化MySQL はインターネット企業で広く使用されており、MySQL ...
この記事では、1枚以上の写真をアップロードするためのVant Uploaderコンポーネントを紹介し...
この例の Web カラー ピッカー機能は、ページ効果を実現するために CSS3 を使用します。つまり...
Brotli は、Zopfli よりも 20 ~ 26% 高い圧縮率を実現できる新しいデータ形式です...
公式の Docker レジストリを使用して作成されたウェアハウスでは、イメージを削除してもデフォルト...
結合の種類1. 内部結合: 結合関係を持つ 2 つのテーブル内のフィールドは、結合関係を満たすレコー...
MySQL データベースの実行効率はプログラムの実行速度に大きな影響を与えます。データベースの効率的...
この記事では、WeChatミニプログラムのビデオ弾幕の位置をランダム化するための具体的なコードを紹介...
目次序文状態DockerをインストールするRedisのマスターノードとスレーブノードを構成する序文以...
序文トップメニューを作成する場合、ポップアップのセカンダリメニューを作成する必要があります。 以前の...
この記事では、ローカル yum ソースを使用して CentOS 上に LAMP 環境を構築する方法に...
privot は、多対多の関係の中間テーブルです。 PT5 フレームワークは自動的に privot ...