【Java】DockerでJavaの環境を構築してみる
~簡単な自己紹介~
- 嫁と猫3匹と暮らすフルリモートの三十路SE
- 投資・節約・副業で資産形成中
- 現在の金融資産は約1,750万円、めざせアッパーマス層(資産3,000万円)
仕事で数年ぶりにJavaを使う説があったので、リハビリ用にDockerを使ったJava環境の構築を行いました。
基本的に下記のQiitaの記事を参考にしています。
Docker × Java シンプルすぎる開発環境構築 #Docker – Qiita
当記事はJavaが動く環境を作ることが目的の記事になります。
そのため、DockerファイルやYAMLファイルなどの設定値の解説は省略し、手順の一部簡略化を行っています。
開発環境
- OS:Windows11
- Docker Desktopインストール済み
- VSCodeインストール済み
Dockerファイルを作成する
下記のコマンドを実行し、Dockerファイルを作成します。
エラーメッセージが表示されますが、Dockerファイルが作成されていれば問題ありません。
type nul > Dockerfile
下記の内容でDockerファイルを編集します。
FROM openjdk:11-slim
RUN apt-get update
WORKDIR /usr/src
YAMLファイルを作成する
下記のコマンドを実行し、YAMLファイルを作成します。
エラーメッセージが表示されますが、YAMLが作成されていれば問題ありません。
type nul > docker-compose.yml
下記の内容でYAMLファイルを編集します。
version: '3.6'
services:
app:
build: .
ports:
- 8080:8080
tty: true
volumes:
- ./src:/usr/src:cached
コンテナを起動する
下記のコマンドを実行し、コンテナを起動します。
docker compose up -d --build
エラーなく終了すると、srcフォルダが作成されます。
Docker画面でJavaコンテナが起動していればOKです。
Javaのサンプルプログラムを用意する
下記のコマンドを実行し、サンプル用のプログラムを作成します。
type nul > src/Main.java
動作確認用にHello Worldと出力される処理を実装します。
public class Main {
public static void main(String[] args) {
System.out.println("Hello World");
}
}
Javaプログラムを実行する
下記のコマンドを実行し、コンテナに入ります。
docker compose exec app bash
下記のコマンドでJavaプログラムをコンパイルします。
javac Main.java
下記のコマンドでJavaプログラムを実行します。
java Main
コンソールにHello Worldと出力されれば成功です。
以上になります。
お疲れさまでした。