Spring Boot アプリケーションの Docker 化には、アプリケーションとその依存関係を含む Docker イメージの作成が含まれます。これにより、アプリケーションを簡単に共有し、Docker がインストールされているマシン上で実行できる方法でパッケージ化できます。以下は、Maven ベースの Spring Boot アプリケーションを Docker 化し、Docker コンテナーで実行するための段階的な手順です。
ステップ 1: Docker をインストールする
まず、Docker がローカル マシンにインストールされていることを確認します。 Docker の公式 Web サイトからダウンロードできます。オペレーティング システムのインストール手順に従ってください。
ステップ 1 が完了したら、ステップ 2 に従ってください
ステップ 2: Dockerfile を作成する
Spring Boot アプリケーションのルート ディレクトリ (pom.xml ファイルがある場所) に、ファイル拡張子のない Dockerfile という名前のファイルを作成します。このファイルは Docker イメージを定義します。
Dockerfile がどのようになるかを示す簡単な例を次に示します:
注 : ここでいくつかの問題が発生する可能性があります。解決してみてください。それは大きくないはずです。例: > エラー [内部] docker.io/library/maven:3.8.6-openjdk-17
のメタデータをロードします。ステップ 3: Docker イメージをビルドする
ターミナル (コマンド プロンプトまたはシェル) を開き、Dockerfile が含まれるディレクトリに移動します。次のコマンドを実行して Docker イメージをビルドします:
docker build -t イメージ名 .
your-image-name を Docker イメージに付けたい名前に置き換えます。
ステップ 4: Docker イメージを確認する
ビルドが完了したら、イメージが正常に作成されたことを確認します:
ドッカー イメージ
出力に画像がリストされるはずです。
ステップ 5: Docker コンテナを実行する
これで、次のコマンドを使用して Docker コンテナを実行できるようになります:
docker run -p 8080:8080 イメージ名
このコマンドは、コンテナのポート 8080 をホスト マシンのポート 8080 にマッピングします。 your-image-name をイメージの構築時に使用した名前に置き換えます。
ステップ 6: アプリケーションをテストする
Web ブラウザを開いて http://localhost:8080 に移動すると、Spring Boot アプリケーションにアクセスできます。すべてが正しく設定されていれば、アプリケーションが実行されていることが確認できるはずです。
ステップ 7: Docker イメージをエクスポートする
インターネットにアクセスできない他のチームと Docker イメージを共有するには、イメージを tar ファイルとして保存できます。
docker save -o イメージ名.tar イメージ名
これにより、他のチームの VM に転送できる Docker イメージの tarball が作成されます。
ステップ 8: ターゲット マシンに Docker イメージをロードする
他のチームが your-image-name.tar ファイルを受信したら、次のコマンドを使用してイメージを Docker 環境にロードできます:
docker load -i あなたのイメージ名.tar
ステップ 9: ターゲット マシンで Docker コンテナを実行する
イメージをロードした後、他のチームは同じコマンドでコンテナを実行できます:
docker run -p 8080:8080 イメージ名
ステップ 10: アプリケーションにアクセスします
これで、ターゲット マシンの http://localhost:8080 でアプリケーションにアクセスできるようになります。
追加メモ
データベース構成: アプリケーションで PostgreSQL を使用している場合は、PostgreSQL コンテナをセットアップするか、アプリケーションからデータベースにアクセスできるようにする必要がある場合があります。 Docker Compose ファイルを作成して、複数のコンテナ (例: アプリ用に 1 つ、PostgreSQL 用に 1 つ) を管理できます。
環境変数: アプリケーションで環境変数 (データベース構成など) が必要な場合は、docker run コマンドの -e フラグを使用して環境変数を Docker コンテナに渡すことができます。
ボリュームのマウント: アプリケーションがデータを永続化する必要がある場合、またはローカル ファイルへのアクセスが必要な場合は、Docker ボリュームの使用を検討してください。
これらの手順に従うことで、Spring Boot アプリケーションを正常に Docker 化し、他のチームと共有できるようになります。
ありがとう、
カイラス
Javaチャーター
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3