Idea で Docker を使用して SpringBoot プロジェクトをデプロイする詳細な手順

Idea で Docker を使用して SpringBoot プロジェクトをデプロイする詳細な手順

序文

プロジェクト要件:

Dockeridea に Docker プラグインをインストールし、Docker を設定して SpringBoot プロジェクト用の Dockerfile を作成します。

1. Dockerをダウンロード、インストール、設定する

ダウンロードアドレス: 公式サイトからDockerをダウンロード

インストール

次のステップに進み続ける

設定パス: 設定 - 一般Expose daemon on tcp://localhost:2375 without TLSチェック

ここに画像の説明を挿入

ミラーをダウンロードする速度を上げるためにミラーを設定しますhttps://xaiqlt1z.mirror.aliyuncs.com

ここに画像の説明を挿入

インストールが成功したかどうかをテストする

C:\Users\msi>docker -v
Docker バージョン 19.03.12、ビルド 48a66213fe

C:\Users\msi>docker 実行 hello-world

Dockerからこんにちは!
このメッセージは、インストールが正常に動作していることを示しています。

このメッセージを生成するために、Docker は次の手順を実行します。
 1. Docker クライアントが Docker デーモンに接続しました。
 2. Docker デーモンは Docker Hub から「hello-world」イメージを取得しました。
  (amd64)
 3. Dockerデーモンは、そのイメージから新しいコンテナを作成し、
  現在読んでいる出力を生成する実行可能ファイル。
 4. Dockerデーモンはその出力をDockerクライアントにストリーミングし、Dockerクライアントはそれを
  端末に。

もっと野心的なことに挑戦するには、次のコマンドで Ubuntu コンテナを実行できます。
 $ docker run -it ubuntu bash

無料の Docker ID を使用して、イメージを共有したり、ワークフローを自動化したりすることができます。
 参考:

その他の例やアイデアについては、以下をご覧ください。
 詳しくはこちら

2. アイデア Dockerプラグインをインストールする

1. idea: file--Plugins--Marketplace Search Docker Installation に Docker プラグインをインストールします。

ここに画像の説明を挿入

2. Dockerサービスを構成する

ファイル – dockerを検索 – Dockerを選択 – 右側にDockerを追加
「接続成功」と表示され、Docker接続が成功したことを示します。

ここに画像の説明を挿入

3. SpringBootプロジェクトを作成し、pom.xmlspringMVCプロジェクトを変更し、localhost:8080/helloにアクセスしてhello文字列を表示します。

@RequestMapping("/hello")
  @レスポンス本文
  パブリック文字列hello(){
    「hello」を返します。
  }

1. pom.xmlファイルを構成する

<ビルド>
    <プラグイン>
      <プラグイン>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
        <処刑>
          <実行>
            <目標>
              <goal>再パッケージ化</goal>
            </目標>
          </実行>
        </処刑>
      </プラグイン>
      <プラグイン>
        <groupId>com.spotify</groupId>
        <artifactId>docker-maven-plugin</artifactId>
        <バージョン>1.2.1</バージョン>
        <処刑>
          <実行>
            <id>ビルドイメージ</id>
            <phase>パッケージ</phase>
            <目標>
              <goal>ビルド</goal>
            </目標>
          </実行>
        </処刑>
        <構成>
          <画像名>${プロジェクト.アーティファクトID}</画像名>
          <画像タグ>
            <imageTag>最新</imageTag>
          </画像タグ>
          <dockerディレクトリ>${project.basedir}</dockerディレクトリ>
          <dockerHost>http://localhost:2375</dockerHost>
          <リソース>
            <リソース>
              <ターゲットパス>/</ターゲットパス>
              <ディレクトリ>${project.build.directory}</ディレクトリ>
              <include>${project.build.finalName}</include>
            </リソース>
          </リソース>
        </構成>
      </プラグイン>
    </プラグイン>
  </ビルド>

2. Dockerファイルを作成する

メインフォルダーの下に docker フォルダーを作成し、その中に Dockerfile ファイルを作成します。 xxxxx.jar は、Maven を使用してパッケージ化された後にコピーされます。

ここに画像の説明を挿入

Dockerfile ファイルの内容:

# Java イメージから、バージョン: 8
java:8より

# アプリディレクトリをマウントする VOLUME /app

# 画像にコピーまたは追加
demo-0.0.1-SNAPSHOT.jar app.jar をコピー

bash -c "touch /app.jar" を実行します。
エクスポーズ8080
エントリポイント ["java", "-jar", "app.jar"]

Maven は、ターゲット ディレクトリ内の jar パッケージをパッケージ化し、docker ディレクトリにコピーします。

Dockerfile構成を構成する

ここに画像の説明を挿入

走る

ここに画像の説明を挿入

正常に実行されました

ここに画像の説明を挿入

テスト

docker を使用して、コンテナが起動しているかどうかを確認します。

ここに画像の説明を挿入

プロジェクトが開始されたかどうかをテストします。

ここに画像の説明を挿入

要約する

今日はDockerコンテナについて学びました。基本的なコマンドは学びましたが、まだ使い方がわかりません。この機会を利用して学習に時間を費やしてください。現時点では使い方がわかっているだけなので、詳しい手順は後ほど追記します。

これで、Docker を使用して Idea で SpringBoot プロジェクトをデプロイする方法についての説明は終わりです。SpringBoot プロジェクトの Docker デプロイの詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • IDEA が docker を統合して springboot プロジェクトを展開するプロセス全体
  • IDEA2021.2 で docker を設定して、Springboot プロジェクトをイメージ化し、ワンクリックでリリースする方法
  • IDEA の Docker プラグインを介して Springboot プロジェクトを公開する方法の詳細なチュートリアル
  • アイデアに基づいてSpringbootプロジェクトをDockerにデプロイする
  • IDEA の Docker プラグインを介して SpringBoot プロジェクトをデプロイするプロセスの詳細な説明

<<:  Typescript+React でモバイルと PC でシンプルなドラッグ アンド ドロップ効果を実現

>>:  MySQL インデックスが失敗するいくつかの状況の概要

推薦する

CentOS8.0ネットワーク設定の実装

1. CentOS 7 と CentOS 8 のネットワーク構成の違い: VMware Workst...

さまざまな Tomcat ログと catalina.out ファイルのセグメンテーションの関係についての簡単な分析

Tomcatログの関係一枚の写真は千の言葉に値する! localhost.{yyyy-MM-dd}....

Tomcat ソースコード起動コンソールの中国語文字化けのデバッグプロセス記録

問題を見つける今日はTomcatのソースコードを勉強するつもりなので、公式サイトからTomcatのソ...

人気の宇宙飛行士ウォッチフェイスをJavaScriptで実装するための完全なコード

1. エフェクト表示JavaScript で書かれた宇宙飛行士のウォッチフェイス。 http://x...

Dockerコンテナを作成、起動、停止する方法

1. コンテナとは、独立して実行されるアプリケーション、またはアプリケーションのグループとその動作環...

ブラウザでのjsのイベントループイベントキューの詳細な説明

目次序文スタックと2つのキューを理解する実行プロセス簡単な例より難しい例要約する序文以下の内容はブラ...

HTML相対パスの親ディレクトリと子ディレクトリの書き方

親ディレクトリを指定する方法../ はソース ファイルの親ディレクトリを表し、../../ はソース...

MySQL データ型の詳細

目次1. 数値型1.1 数値型の分類1.1.1 浮動小数点数1.1.2 ビットタイプ1.1.3 時間...

ログインボックスのドラッグ効果を実現するためのJavascript

この記事では、ログインボックスのドラッグ効果を実現するためのJavascriptの具体的なコードを参...

複数のドメイン名、ポート、IP仮想ホストに基づくNginx構成

1. タイプの導入1.1 ドメインベースの仮想ホスティングいわゆるドメイン名ベースの仮想ホストとは、...

CSSプリコンパイル言語とその違いの詳細な説明

1. 何ですか マークアップ言語として、CSSは比較的シンプルな構文とユーザーに対する要件が低いが、...

Linux システムコマンドのメモ

この記事では、Linux システム コマンドについて説明します。ご参考までに、詳細は以下の通りです。...

MySQL ステートメントを使用して、さまざまな整数が占めるバイト数とその最大値と最小値を調べる例

直接コード: タイプとして「bigint unsigned」、バイトとして「8」、max_numとし...

DockerにRedisをインストールし、設定ファイルとして起動する詳細な説明

更新: 最近、サーバーがマイニング ウイルスによってハッキングされたことが判明しました。これは、おそ...

Vue ソースコード学習でレスポンシブ性を実装する方法

目次序文1. レスポンシブシステムの重要な要素1. データの変更を監視する方法2. 依存関係を収集す...