1. IDEAはdockerプラグインをダウンロードしますここでは詳細には触れませんが、他のプラグインと同じようにインストールしてください。 2. クラウドサーバーDocker注: 私のサーバーはcentOS 7を使用しています 2.1 Dockerのインストールhttps://www.jb51.net/article/213611.htm 2.2 Dockerサービスを停止するDocker サービスを再起動するときにエラーが発生しないようにするには、まず Docker サービスを停止してから構成ファイルを変更するのが最適です。 Docker を停止する前に、まず実行中のコンテナを停止する必要があります。そうしないと、後でコンテナを起動するときにエラーが発生する可能性があります。 実行中のコンテナを停止します。
次にdockerサービスを停止します
2.3 Docker設定ファイルの変更HTTP を使用して IDEA をサーバー上の Docker に接続するには、Docker 構成ファイルを次のように変更する必要があります。
Execstart 行を変更し、次の内容に置き換えて、HTTP リモート接続用にポート 2375 を開きます。
2.4 設定ファイルを更新するコマンドは次のとおりです。
設定ファイルが有効かどうかをテストするには、サーバー上で次のコマンドを入力します。JSON 文字列の内容が表示されれば、ファイルは有効です。
2.5 Dockerサービスを開始するコマンドは次のとおりです。
2.6 ファイアウォールにポート2375を追加するコマンドは次のとおりです。
ファイアウォールを再起動します。
2.7 Alibaba Cloudがセキュリティグループルールを追加ここで、インスタンス ページでセキュリティ グループを入力し、ルールを構成してポート 2375 を開く必要があることに注意してください。 2.8 リモートHTTP接続のテストローカルブラウザに この時点で、IDEA を使用して dokcer を統合できます。 3. Mavenプロジェクトのパッケージ化3.1 プラグインのパッケージ化pomファイルにspringbootパッケージングプラグインを追加する <プラグイン> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </プラグイン> 3.2 リソースファイルのパッケージ化とパッケージ化後の場所Java ソース ファイルをパッケージ化するだけでなく、XML/YML/プロパティ/HTML ファイルなどのリソース ファイルもパッケージ化する必要があります。ただし、HTML ファイルがパッケージ化される場所には注意してください。HTML ファイルは META-INF/resources ディレクトリに配置する必要があります。そうしないと、jar パッケージを起動した後に HTML ページにアクセスできなくなります。 <リソース> <リソース> <ディレクトリ>src/main/java</ディレクトリ> <!--ここではマッパー ファイルを java ディレクトリに配置するので、コンパイル場所を宣言する必要があります--> <含まれるもの> <include>**/*.xml</include> </includes> <フィルタリング>真</フィルタリング> </リソース> <リソース> <!--yml 構成ファイルのコンパイル場所を宣言します--> <ディレクトリ>src/main/resources</ディレクトリ> </リソース> <リソース> <!-- HTML ファイルのコンパイル場所を宣言し、コンパイルされたファイルを指定された場所に配置します --> <ディレクトリ>src/main/webapp</ディレクトリ> <targetPath>META-INF/リソース</targetPath> </リソース> </リソース> 3.3 Dockerプラグイン注意すべき点が 2 つあります。1 つ目は、Docker イメージ名の前にプレフィックスが必要であり、プレフィックスは [プレフィックス]:[イメージ名]:[バージョン番号] で構成されます。2 つ目は、イメージ名を指定するときに大文字を含めないことです。 プロジェクト情報では名前とバージョンの両方が使用されます <groupId>組織チーム</groupId> <artifactId>クールなミーティング</artifactId> <バージョン>1.0-SNAPSHOT</バージョン> <name>クールミーティング</name> <description>docker は会議を開始します</description> <プロパティ> <java.version>1.8</java.version> <docker.image.prefix>チーム</docker.image.prefix> </プロパティ> <プラグイン> <プラグイン> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </プラグイン> <!-- tag::plugin[] --> <プラグイン> <groupId>com.spotify</groupId> <artifactId>docker-maven-plugin</artifactId> <バージョン>1.0.0</バージョン> <構成> <dockerホスト>http://127.0.0.1:2375</dockerホスト> <!--画像名には大文字は使用できません--> <イメージ名>${docker.image.prefix}/${project.artifactId}</イメージ名> <!--Dockerfile の場所--> <dockerディレクトリ>${project.basedir}/src/main/docker</dockerディレクトリ> <リソース> <リソース> <ターゲットパス>/</ターゲットパス> <!--ターゲットの場所--> <ディレクトリ>${project.build.directory}</ディレクトリ> <!--jar パッケージと Dockerfile を同じディレクトリに配置します--> <include>${project.build.finalName}.jar</include> </リソース> </リソース> </構成> </プラグイン> <!-- end::plugin[] --> <プラグイン> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <構成> <skipTests> 真</skipTests> </構成> </プラグイン> </プラグイン> Dockerfile ファイルは以下のとおりです。ファイルを作成する際は、D を大文字にする必要があることに注意してください。/meetingMS.jar は書きやすいようにエイリアスになっています。 java:8より ボリューム /tmp coolmeeting-1.0-SNAPSHOT.jar /meetingMS.jarを追加します。 ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/meetingMS.jar"] 3.4 クリーン、インストール、dockerビルドまずMavenを使ってクリーンアップとインストールを行い、次にMavenプラグインdockerを使ってビルドします。 パッケージ化されたファイルのディレクトリ: コンテナを起動する 起動パラメータを設定する 4. 遭遇した落とし穴
5. 参考文献jar としてパッケージ化された Springboot は jsp または html にアクセスできません (404 エラー) yml またはプロパティ ファイルがスキャンされない場合について Jarパッケージを実行するときに起動ポートを指定します スタックオーバー IDEAはDockerを統合し、SpringBootアプリケーションを迅速にデプロイします IDEAはDockerを統合して迅速な展開を実現 これで、IDEA が docker を統合して springboot プロジェクトをデプロイする方法に関するこの記事は終了です。IDEA が docker を統合して springboot プロジェクトをデプロイする方法に関するより関連性の高いコンテンツについては、123WORDPRESS.COM で以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: アニメーションの再生と一時停止を制御するための CSS のヒント (非常に実用的)
>>: HTML ドキュメントに CSS を埋め込む一般的な 3 つの方法
序文少し前に、browser-sync+gulp+gulp-nodemon を組み合わせて、本番環境...
CSS は div にスクロールを追加し、スクロール バーを非表示にします。具体的なコードは次のとお...
序文ご存知のとおり、デフォルトでは、Alibaba Cloud にインストールされている MySQL...
この記事の例では、参考までに、シンプルなショッピングカートモジュールを実装するためのjsの具体的なコ...
目次ポート関連の概念:ポートとサービスの関係1: nmapツールが開いているポートを検出する2: n...
Linuxバージョン: CentOS 7 [root@azfdbdfsdf230lqdg1ba91 ...
序文RabbitMQ を使用する場合、一定期間クライアントと RabbitMQ サーバーの間でトラフ...
関連記事:初心者が学ぶ HTML タグ (4)導入された HTML タグは、必ずしも XHTML 仕...
この記事の例では、じゃんけんゲームを実装するためのJSの具体的なコードを参考までに共有しています。具...
ステップ1: MySQL YUMソースを取得するMySQLの公式サイトにアクセスして、RPMパッケー...
NTP は、ネットワーク上で時間を同期するための TCP/IP プロトコルです。通常、クライアントは...
目次1. 解凍する2. データフォルダを作成する3. MySQLに環境変数を追加する3.1 コントロ...
この記事の例では、vue3 が独自のページングコンポーネントをカプセル化する具体的なコードを参考まで...
目次序文1. ファイルのディスク使用量を確認する1.1 ディスク容量の使用状況を確認する1.2 ディ...
固定サイドバーを実装するにはJavaScriptを使用します。参考までに、具体的な内容は次のとおりで...