IntelliJ IDEA に Docker プラグインをインストールする詳細な手順 (2018 バージョン)

IntelliJ IDEA に Docker プラグインをインストールする詳細な手順 (2018 バージョン)

1. 開発環境

開発ツールバージョン
IntelliJ IDEA 2018.1.6 (コミュニティエディション)
Docker統合181.5087.20

2. dockerプラグインをインストールする

1. アイデアのインストール

Idea を開き、「ファイル」->「設定」->「プラグイン」->「JetBrains プラグインのインストール」に移動してプラグインのインストール インターフェイスに入り、検索ボックスに「docker」と入力すると Docker 統合が表示されます。右側の「インストール」ボタンをクリックしてインストールします。インストール後に Idea を再起動します。

再起動後、docker を設定し、リモート docker サービスに接続します。 [ファイル] -> [設定] -> [ビルド、実行、デプロイメント] -> [Docker] から構成インターフェイスを開きます。

+ 記号をクリックして Docker 構成を追加し、名前とエンジン API URL を入力します。URL は Docker サービスのアドレスであり、Docker ではリモート接続機能を有効にする必要があります。 CentOS では、リモート接続を有効にするために、docker 起動パラメータに次の構成を追加します。

設定ファイルの場所: /usr/lib/systemd/system/docker.service、設定パラメータ項目: ExecStart

-H unix:///var/run/docker.sock -H tcp://0.0.0.0:2375

2. インストールパッケージをダウンロードしてインストールします

JetBrains の公式 Web サイト (http://plugins.jetbrains.com/plugin/7724-docker-integration) から docker インストール パッケージをダウンロードし、ダウンロード後に Idea を開き、[ファイル] -> [設定] -> [プラグイン] -> [ディスクからプラグインをインストール] からファイル選択インターフェイスを開き、ダウンロードした zip インストール パッケージを選択して、インストール後に Idea を再起動します。構成は上記の通りです。

3. Spring Boot サービスの Docker デプロイメント

1. 新しいSpring Bootプロジェクトを作成する

サンプル プロジェクト https://github.com/sealire/people/tree/tutorial を参照して、次のようにプロジェクト内に単純に文字列を返す REST インターフェイスを記述できます。

@RequestMapping(値 = "テスト"、メソッド = RequestMethod.GET)
@レスポンス本文
パブリックオブジェクトテスト(HttpServletRequestリクエスト、@RequestParam文字列パラメータ) {
    パラメータを返します。
}

pom ファイルを変更し、プロパティを追加し、プラグインを追加します。

<プロパティ>
    <docker.image.prefix>リーシア</docker.image.prefix>
</プロパティ>
 
<ビルド>
	<プラグイン>
		<プラグイン>
			<groupId>com.spotify</groupId>
			<artifactId>docker-maven-plugin</artifactId>
			<バージョン>1.0.0</バージョン>
			<構成>
				<イメージ名>${docker.image.prefix}/${project.artifactId}</イメージ名>
				<dockerディレクトリ></dockerディレクトリ>
				<リソース>
					<リソース>
						<ターゲットパス>/</ターゲットパス>
						<ディレクトリ>${project.build.directory}</ディレクトリ>
						<include>${project.build.finalName}.jar</include>
					</リソース>
				</リソース>
			</構成>
		</プラグイン>
	</プラグイン>
</ビルド>

2. Dockerfileファイルを構成する

プロジェクトのルート ディレクトリに次の内容の新しい Dockerfile ファイルを作成します。

java:8より
ボリューム /tmp
コピー target/resource-1.0-SNAPSHOT.jar resource.jar
bash -c "touch /resource.jar" を実行します。
エクスポーズ8080
エントリポイント ["java","-jar","re​​source.jar"]
 
# docker run -d -p 18080:8080 --name docker-resource leesia/resource:1.0

ベースイメージは java:8 であり、コピーコマンドは /target の下のリソース jar をイメージにコピーします。 ENTRYPOINT はコンテナを起動するコマンドです。

3. Dockerイメージを作成する

プロジェクトをパッケージ化し、idea ターミナルで mvn clean package コマンドを実行してコンパイルおよびパッケージ化します。パッケージ化後、ターゲット ディレクトリに jar パッケージが生成されます。

jar パッケージを生成したら、テストのためにローカルでサービスを開始できます。テスト後、Docker イメージ作成コマンドを設定します。 [実行] -> [構成の編集] から構成インターフェイスに入ります。

Docker をクリックし、+ 記号をクリックして、docker コマンドを追加し、名前を入力して、サーバーを選択し、Dockerfile ファイルを選択して、イメージ タグを入力し、構成を完了します。

設定が完了したら、このコマンドを実行します。

エラーがなければ、Docker サーバーに接続され、イメージが作成されます。イメージを作成したら、Docker サーバー上でイメージを起動し、次のコマンドを実行してイメージを起動します。

docker run -d -p 18080:8080 --name docker-resource leesia/resource:1.0

-p は、Docker サーバーのポート 18080 をコンテナのポート 8080 にバインドします。

コンテナが起動したら、サービス インターフェイスにアクセスします。インターフェイス パラメータは文字列であり、文字が返されます。

IntelliJ IDEA の docker プラグインのインストールに関するこの記事はこれで終わりです。IDEA の docker プラグインのインストールの詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • アイデアはDockerプラグインを使用してワンクリックの自動デプロイを実現します
  • IDEA は Docker プラグインを使用します (初心者向けチュートリアル)
  • Docker プラグインを使用して IDEA のクラウド サーバーにプロジェクトをリモートでデプロイする方法
  • IDEA が Docker プラグインを統合した後のログの文字化けの問題を解決
  • IDEA の Docker プラグインを介して Springboot プロジェクトを公開する方法の詳細なチュートリアル

<<:  入力選択スタイルを変更する CSS 疑似クラスのサンプルコード

>>:  JS ES 新機能テンプレート文字列

推薦する

Vue ページ状態の永続化の詳細な説明

目次コード:補充:要約する要件: 左のツリーと右のテーブル。組織ツリーでノードを選択した後、詳細ペー...

MySQLの分離レベルとロックメカニズムの詳細な説明

目次簡単な説明: 1. 取引の4つの特徴2. 複数の同時トランザクションによって発生する問題3. ト...

uniappとvueの違いの詳細な説明

目次1. シンプルなページの例2.uni-appはvueコンポーネントとミニプログラムネイティブコン...

Axios の二次カプセル化の例 プロジェクトのデモ

1. なぜパッケージングを行うのですか?全体的なコード呼び出し、リクエストの公開処理、パーソナライズ...

フォント名に従ってフォントを呼び出すと、ブラウザに必要なフォントが表示されます。

質問 1: ブラウザに必要なフォントを表示するように指示するにはどうすればよいでしょうか? フォント...

iframe に関するいくつかの発見と考察

この物語は、今日の予期せぬ発見から始まります。同社には複数のウェブサイトがある。友達リンクにはお互い...

MySQL コマンドライン操作中のエンコードの問題の詳細な説明

1. MySQLデータベースのエンコーディングを確認する mysql -u ユーザー名 -p パスワ...

MySQLテーブルにタイムスタンプを追加するいくつかの方法

シナリオ:テーブル内のデータは、同期ツールを使用して他のデータベースと同期する必要があり、増分同期に...

Tomcat の文字化けしたコードとポート占有の解決方法について簡単に説明します

Tomcat サーバーは、無料でオープン ソースの Web アプリケーション サーバーです。軽量のア...

HTML チェックボックスとラジオボタンスタイルの美化の簡単な例

HTML チェックボックスとラジオボタンスタイルの美化の簡単な例チェックボックス: XML/HTML...

mysql data_dirの変更によって発生するエラー問題を解決する

今日は、新しく購入した Alibaba Cloud ECS 環境 (Ubuntu 16.04 LTS...

CentOS 7 は Hadoop 2.10 の高可用性 (HA) をビルドします

この記事では、CentOS 7 で高可用性 Hadoop 2.10 クラスターを構築する方法を紹介し...

TypeScript の条件型に関する詳細な読書と実践記録

目次ジェネリック型での条件型の使用ツールタイプ脱出ポッド矢印関数で条件型を使用する型推論による条件型...

プロトタイプとプロトタイプチェーン プロトタイプとプロトタイプの詳細

目次1. プロトタイプ2. プロトタイプチェーン2.1 コンストラクタ2.2 電話をかける/申し込む...

Kylin V10 への zabbix-agent のインストール手順

1. インストールパッケージをダウンロードするダウンロードアドレス: https://sourcef...