Check


プログラミングが無料で学べるYouTubeチャンネルを配信中!

RubyやPython、PHPやReactなど様々なプログラミング言語のチュートリアル動画が充実!

チャンネル登録はこちら

Java

【Spring Boot+Next.js】DockerでフロントエンドをNext.jsにしてバックエンドをSpring Bootで環境構築をする

動画で解説を見る

開発環境

  • Visual Studio Code:version 1.73.0
  • OS:Windows10
  • Docker Engine:v23.0.5

DockerでフロントエンドをNext.jsにしてバックエンドをSpring Bootで環境構築をする手順

DockerでフロントエンドをNext.jsにしてバックエンドをSpring Bootで環境構築をする手順について解説していきます。

ディレクトリ構成

今回のディレクトリ構成は下記を目指していきます。

最初に必要なディレクトリを作成しておいてください。

docker-compose.ymlを作成

まずはdocker-compose.ymlを作成していきます。

ルートディレクトリの直下にdocker-compose.ymlを作成し、以下のようにしてください。

Javaコンテナを作成

次にJavaコンテナを作成していきます。

docker/backend/ディレクトリの直下にDockerfileを作成し、以下のようにしてください。

Nodeコンテナを作成

次にNodeコンテナを作成していきます。

docker/frontend/ディレクトリの直下にDockerfileを作成し、以下のようにしてください。

MySQLコンテナを作成

次にMySQLコンテナを作成していきます。

docker/database/ディレクトリの直下にDockerfileを作成し、以下のようにしてください。

Nginxコンテナを作成

次にNginxコンテナを作成していきます。

docker/nginx/ディレクトリの直下にDockerfileを作成し、以下のようにしてください。

docker/nginx/ディレクトリの直下にdefault.confを作成し、以下のようにしてください。

Next.jsプロジェクトとSpring Bootプロジェクトの作成

次にNext.jsプロジェクトとSpring Bootプロジェクトの作成をしていきます。

まずは以下のコマンドでプロジェクトディレクトリに移動します。

以下のコマンドでコンテナをビルドします。

以下のコマンドでNext.jsプロジェクトを作成します。

以下のコマンドでSpring Bootプロジェクトを作成します。

docker-compose.ymlを修正

次にdocker-compose.ymlを修正していきます。

ルートディレクトリの直下にdocker-compose.ymlを以下のように修正してください。

Nodeコンテナを作成

次にNodeコンテナを作成していきます。

docker/frontend/ディレクトリの直下にDockerfileを作成し、以下のようにしてください。

Dockerコンテナを再ビルド

以下のコマンドでDockerコンテナを再ビルドします。

Spring Bootアプリケーションの環境設定

次にSpring Bootアプリケーションの環境設定をしていきます。

Spring Bootアプリケーションのapplication.properties設定を以下のように修正します。

動作テスト

動作テストのためにコードを追記していきます。

まずはSpring BootにAPIを追加していきます。

次にNext.jsにページを追加していきます。

次に以下のコマンドでコンテナを起動します。

ブラウザでhttp://localhost/testにアクセスし、「メッセージ: Hello from Spring Boot!」と「接続ステータス: OK」が表示されていれば成功です。

まとめ

今回はDockerでSpring BootとNext.jsの環境構築をする手順について解説していきましたが、いかがだったでしょうか。

近年、フロントエンドとバックエンドを分けて運用するアプリケーションが増えてきましたが、Dockerを使えば簡単に開発環境を構築することができます。

Dockerを使った開発は必須となりつつありますので、是非、チャレンジしてみてください。

Check


プログラミングが無料で学べるYouTubeチャンネルを配信中!

RubyやPython、PHPやReactなど様々なプログラミング言語のチュートリアル動画が充実!

チャンネル登録はこちら

-Java