シンプルなSpring Boot Webプロジェクトを作成する アイデア ツールを使用して、Spring Boot Web プロジェクトを作成します。これはテストなので、[次へ] をクリックします。 アクセス用のテスト API を記述します。サービス ポート番号を変更する必要はありません。ローカルでは 8701 に変更しました。 プログラムを起動すると、プログラムがデフォルトのポート 8080 ではないことがわかります。次の URL にアクセスしてください: http://localhost:8701/v1/hello 上記のシンプルな Web プロジェクトが構築されました。次に、このデモ プロジェクトを docker 経由で実行してみましょう。 最初のステップは Docker をインストールすることです (詳細な手順はここでは説明しません)。 2 番目のステップでは、Java 環境を備えた Docker イメージが必要です。私はNetEase Cloud Mirror Center(アドレス:https://c.163yun.com/hub#/library/repository/info?repoId=65430)からダウンロードしました。Alibaba Cloudやその他のプラットフォームからJava環境に対応するイメージを見つけて作成することもできます。 イメージを取得してローカルにプルする docker pull hub.c.163.com/housan993/centos7_jdk8:最新 3 番目のステップでは、デモ プロジェクトを jar パッケージにパッケージ化し、mvn install を使用します。便宜上、生成された jar をターゲットからプロジェクトのルート ディレクトリに直接取得します。 4 番目のステップでは、プロジェクトの下に Dockerfile ファイルを作成し、デモ プロジェクトのミラーを作成します。 Dockerfile ファイルの内容: hub.c.163.com/housan993/centos7_jdk8:latest より demo-0.0.1-SNAPSHOT.jar をコピー / CMD java -jar デモ-0.0.1-SNAPSHOT.jar Dockerfile ファイルを書き込んだ後、Docker コマンドを使用してイメージを構築します。 dockerコマンドは、現在のディレクトリ(デフォルトのファイル名はDockerfile)でDockerfileファイルを自動的に見つけ、ディレクトリパスを指定します。「.」は現在のディレクトリを示します。 デモイメージをビルドします。 次のログが表示されれば、イメージは正常に作成されています。 5 番目のステップでは、作成されたイメージに従ってプログラムのコンテナーを起動し、ポート (8701) をローカル マシンの 8701 にマップします。 docker run -d -p 8701:8701 デモイメージ 実行すると、コンテナの CONTAINER ID である長い文字列が取得されます。 docker psで確認してみましょう コンテナの起動ログを見て、Java プログラムが実行されているかどうかを確認しましょう。 docker ログ [コンテナ ID] コンテナのログを見ると、ローカルで Java プログラムを起動したときのログと全く同じであることがわかったので、マップされたポートからデモ プログラムにアクセスして動作するか確認してみます。 デモ コンテナを停止して、まだアクセスできるかどうかを確認しましょう。 デモコンテナをもう一度起動してみましょう 上記は、Docker を使用して Java プログラムを実行する単純な例です。将来的には、コマンドをパッケージ化してビルドし、その他のコマンドをシェル スクリプトに組み込み、コンテナー バージョンを自動的に生成し、パラメーター変数の値を動的に取得できるようになります。コンテナの話はとても楽しいですし、将来的に自分のプロジェクトを自動で展開するのにとても便利になるでしょう。k8s コンテナ オーケストレーション ツールも後ほど紹介しますが、これはさらに興味深いものになるでしょう。 これで、docker で Java プログラムを起動する手順に関するこの記事は終了です。docker で Java プログラムを起動する方法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: Vue+Openlayer をベースに geojson を動的に読み込む方法
>>: MySQL コード実行構造例の分析 [シーケンス、分岐、ループ構造]
Spring jdbc のデータベース操作オブジェクト モデルの詳細な例Spring Jdbc デー...
1. offsetParentの定義: offsetParentは子要素に最も近い位置に配置された親...
1. 理由新しいシステムに MySQL を再インストールする必要があったので、将来詳細を忘れた場合...
目次1. Vue3コンポーネント通信方式2. Vue3通信の使い方2.1 小道具2.2 $エミット2...
ここ数日、ウェブサイトを初めて開いたときにアクセスが非常に遅いのですが、その後はページが正常に開きま...
ウェブサイトの解析を高速化するために、動的ページと静的ページを異なるサーバーで解析して、解析速度を向...
目次導入例: イベントの委任記述方法1: イベント委譲書き方2: 各子要素がイベントをバインドする例...
varchar の保存ルール4.0 未満のバージョンでは、varchar(20) は 20 バイトを...
入力を制限する一般的な方法1. ボタンが押されたときに点線のボックスを消すには、入力に属性値hide...
クールなフロントエンドページのランダムQRコード検証を参考までに共有します。具体的な内容は次のとおり...
Linuxシステムをお持ちでない場合は、ダウンロードとインストールについてはhttps://www....
CSS セレクターHTML タグにスタイルを設定すると、タグの属性を設定できます。 <div ...
目次1.Nuxtサーバーサイドレンダリングアプリケーションの展開(SSRサーバーレンダリング)利点:...
導入この記事は、 React + antdをベースにして、完全な全屏demoを紹介します。その理由は...
目次序文分析するデータ合計繰り返し率どこにあるかと持っているかの違い要約する序文私はソフトウェアの導...