はじめに
前回の記事で、SpringBootで作成したWebアプリケーションをjarファイルにしました。
本記事では、Dockerコンテナにして、Webサーバを起動するところまでを試します。
Dockerファイルを作成
project-root
├── backend
│ ├── build
│ │ ├── libs
│ │ │ └── backend-0.0.1-SNAPSHOT.jar
という構成になっているプロジェクトでproject-root/dockerfile
を作成する。
# OpenJDKの公式イメージを使用
FROM openjdk:21-jdk-slim
# 作業ディレクトリを作成
WORKDIR /app
# jarファイルをコンテナにコピー
COPY backend/build/libs/backend-0.0.1-SNAPSHOT.jar backend-0.0.1-SNAPSHOT.jar
# アプリケーションを実行
CMD ["java", "-jar", "backend-0.0.1-SNAPSHOT.jar"]
コンテナビルド
docker build -t test-container .
コンテナ実行
docker run -d -p 8080:8080 --name my-app test-container
動作確認
http://localhost:8080/
にアクセス。
おわりに
次回以降に以下トピックを記事にしたいと思います。
-
コンテナ化したSpringBootWebアプリのログを永続化
-
自前で作成したコンテナを用いてReactプロジェクトをビルド
-
自前で作成したコンテナを用いてSpringBootプロジェクトをビルド