From 6851654eeb809a11064d8ee24058b93a85873685 Mon Sep 17 00:00:00 2001 From: ika-2-2 <219417869+ika-2-2@users.noreply.github.com> Date: Sat, 23 Aug 2025 15:59:08 +0900 Subject: [PATCH 01/10] =?UTF-8?q?fix:=20gradle=E3=81=8B=E3=82=89Maven?= =?UTF-8?q?=E3=81=AB=E7=A7=BB=E8=A1=8C=E3=80=81Makefile=E6=96=B0=E8=A6=8F?= =?UTF-8?q?=E4=BD=9C=E6=88=90=E3=80=81.devcontainer/Dockerfile=E3=81=AEJav?= =?UTF-8?q?a=E3=83=90=E3=83=BC=E3=82=B8=E3=83=A7=E3=83=B3=E3=82=9221?= =?UTF-8?q?=E3=81=AB=E5=A4=89=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .devcontainer/Dockerfile | 2 +- .gitignore | 3 +- Makefile | 62 +++++++++++++++++++++++++++++++++++ docker-compose.yml | 10 +++--- docker/development/Dockerfile | 5 --- docker/paper/Dockerfile | 8 +++-- eula.txt | 1 + 7 files changed, 76 insertions(+), 15 deletions(-) create mode 100644 Makefile delete mode 100644 docker/development/Dockerfile create mode 100644 eula.txt diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 1b16436..5f4006c 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -1,4 +1,4 @@ -FROM mcr.microsoft.com/devcontainers/java:17 +FROM mcr.microsoft.com/devcontainers/java:21 USER root RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \ diff --git a/.gitignore b/.gitignore index 87f3c62..b8c3a52 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,2 @@ -build/ +# Maven target/ -.DS_Store diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..384f34c --- /dev/null +++ b/Makefile @@ -0,0 +1,62 @@ +# Minecraft LogTime Plugin - 開発用Makefile + +.PHONY: help build start stop clean logs shell test reload + +# デフォルトターゲット +help: + @echo "利用可能なコマンド:" + @echo " make build - プラグインをビルド" + @echo " make start - Paper サーバーを起動" + @echo " make stop - すべてのコンテナを停止" + @echo " make clean - ビルド成果物とコンテナを削除" + @echo " make logs - Paper サーバーのログを表示" + @echo " make shell - 開発コンテナに入る" + @echo " make test - テストを実行" + @echo " make reload - プラグインをリビルドしてサーバー再起動" + +# プラグインをビルド +build: + @echo "プラグインをビルド中..." + docker-compose run --rm development mvn clean package + +# Paper サーバーを起動 +start: + @echo "Paper サーバーを起動中..." + docker-compose up -d paper + +# すべてのコンテナを停止 +stop: + @echo "コンテナを停止中..." + docker-compose down + +# ビルド成果物とコンテナを削除 +clean: + @echo "クリーンアップ中..." + docker-compose down -v + docker-compose build --no-cache + rm -rf target/ + +# Paper サーバーのログを表示 +logs: + docker-compose logs -f paper + +# 開発コンテナに入る +shell: + docker-compose run --rm development bash + +# テストを実行 +test: + docker-compose run --rm development mvn test + +# プラグインをリビルドしてサーバー再起動(開発時に便利) +reload: + @echo "プラグインをリビルドしてサーバー再起動中..." + make build + docker-compose restart paper + +# 開発環境を初期化(初回セットアップ用) +init: + @echo "開発環境を初期化中..." + docker-compose build + make build + @echo "初期化完了!'make start' でサーバーを起動できます。" \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml index 33af68b..4bf0df7 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -4,15 +4,15 @@ services: development: build: context: . - dockerfile: ./docker/development/Dockerfile + dockerfile: ./.devcontainer/Dockerfile container_name: mc-plugin-dev working_dir: /app volumes: # ローカルのプロジェクトフォルダをコンテナの/appに同期します。 # これにより、ローカルでコードを編集すると即座にコンテナ内に反映されます。 - .:/app - # Gradleのキャッシュを永続化し、2回目以降のビルドを高速化します。 - - gradle_cache:/root/.gradle + # Mavenのキャッシュを永続化し、2回目以降のビルドを高速化します。 + - maven_cache:/root/.m2 # コンテナを起動し続け、`docker-compose exec`で中に入れるようにします。 tty: true stdin_open: true @@ -28,7 +28,7 @@ services: - "25565:25565" # Minecraftサーバーのポート volumes: # developmentコンテナでビルドしたjarファイルを、サーバーのpluginsフォルダに配置します。 - - ./build/libs:/server/plugins + - ./target:/server/plugins # ワールドデータなどを永続化します。 - paper_data:/server # サーバーの起動にはEULAへの同意が必要です。 @@ -40,5 +40,5 @@ services: # Dockerが管理するデータ領域(ボリューム)の定義 volumes: - gradle_cache: + maven_cache: paper_data: diff --git a/docker/development/Dockerfile b/docker/development/Dockerfile deleted file mode 100644 index dfb965e..0000000 --- a/docker/development/Dockerfile +++ /dev/null @@ -1,5 +0,0 @@ -# JAVAのプログラムを作る為の全部入りセットをインストール -FROM eclipse-temurin:21-jdk-jammy - -# 作業ディレクトリを作成 -WORKDIR /app \ No newline at end of file diff --git a/docker/paper/Dockerfile b/docker/paper/Dockerfile index d2a5bd3..617bb79 100644 --- a/docker/paper/Dockerfile +++ b/docker/paper/Dockerfile @@ -8,14 +8,18 @@ FROM eclipse-temurin:21-jre-jammy # 必要なツールをインストール -RUN apt-get update && apt-get install -y wget && rm -rf /var/lib/apt/lists/* +RUN apt-get update && apt-get install -y wget curl jq && rm -rf /var/lib/apt/lists/* # サーバーの作業ディレクトリを作成 WORKDIR /server # Paperサーバーの最新ビルドを自動で取得するように修正 ARG MC_VERSION=1.21 -RUN wget -O paper.jar https://api.papermc.io/v2/projects/paper/versions/${MC_VERSION}/builds/$(wget -qO- https://api.papermc.io/v2/projects/paper/versions/${MC_VERSION} | grep -o '"builds":\[[^]]*' | grep -o '[0-9]*' | tail -1)/downloads/paper-${MC_VERSION}-$(wget -qO- https://api.papermc.io/v2/projects/paper/versions/${MC_VERSION} | grep -o '"builds":\[[^]]*' | grep -o '[0-9]*' | tail -1).jar +RUN LATEST_BUILD=$(curl -s "https://api.papermc.io/v2/projects/paper/versions/${MC_VERSION}" | jq -r '.builds[-1]') && \ + wget -O paper.jar "https://api.papermc.io/v2/projects/paper/versions/${MC_VERSION}/builds/${LATEST_BUILD}/downloads/paper-${MC_VERSION}-${LATEST_BUILD}.jar" + +# EULAファイルを事前に作成 +RUN echo "eula=true" > eula.txt # サーバーを起動するコマンド # メモリ割り当てはPCのスペックに合わせて調整してください (例: -Xms2G -Xmx2G) diff --git a/eula.txt b/eula.txt new file mode 100644 index 0000000..02dccd9 --- /dev/null +++ b/eula.txt @@ -0,0 +1 @@ +eula=true From 642add21b5b8bc5b0c65f57c57326bd8e2e0e5b3 Mon Sep 17 00:00:00 2001 From: nka21 <133028205+nka21@users.noreply.github.com> Date: Tue, 26 Aug 2025 14:49:43 +0000 Subject: [PATCH 02/10] =?UTF-8?q?fix:=20`eula.txt`=20=E3=82=92=E3=82=B3?= =?UTF-8?q?=E3=83=B3=E3=83=86=E3=83=8A=E5=86=85=E3=81=A7=E7=94=9F=E6=88=90?= =?UTF-8?q?=E3=81=99=E3=82=8B=E3=82=93=E3=81=98=E3=82=83=E3=81=AA=E3=81=8F?= =?UTF-8?q?=E3=81=A6=E3=80=81=E3=82=B3=E3=83=94=E3=83=BC=E3=81=99=E3=82=8B?= =?UTF-8?q?=E3=82=88=E3=81=86=E3=81=AB=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docker/paper/Dockerfile | 2 +- eula.txt => docker/paper/eula.txt | 0 2 files changed, 1 insertion(+), 1 deletion(-) rename eula.txt => docker/paper/eula.txt (100%) diff --git a/docker/paper/Dockerfile b/docker/paper/Dockerfile index 617bb79..21f01be 100644 --- a/docker/paper/Dockerfile +++ b/docker/paper/Dockerfile @@ -19,7 +19,7 @@ RUN LATEST_BUILD=$(curl -s "https://api.papermc.io/v2/projects/paper/versions/${ wget -O paper.jar "https://api.papermc.io/v2/projects/paper/versions/${MC_VERSION}/builds/${LATEST_BUILD}/downloads/paper-${MC_VERSION}-${LATEST_BUILD}.jar" # EULAファイルを事前に作成 -RUN echo "eula=true" > eula.txt +COPY docker/paper/eula.txt . # サーバーを起動するコマンド # メモリ割り当てはPCのスペックに合わせて調整してください (例: -Xms2G -Xmx2G) diff --git a/eula.txt b/docker/paper/eula.txt similarity index 100% rename from eula.txt rename to docker/paper/eula.txt From 2c102b4690c46216ea97e5b749487c0f820a9959 Mon Sep 17 00:00:00 2001 From: nka21 <133028205+nka21@users.noreply.github.com> Date: Tue, 26 Aug 2025 14:51:15 +0000 Subject: [PATCH 03/10] =?UTF-8?q?refactor:=20`docker/`=20=E3=82=92?= =?UTF-8?q?=E5=89=8A=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docker-compose.yml | 2 +- {docker/paper => paper}/Dockerfile | 2 +- {docker/paper => paper}/eula.txt | 0 3 files changed, 2 insertions(+), 2 deletions(-) rename {docker/paper => paper}/Dockerfile (97%) rename {docker/paper => paper}/eula.txt (100%) diff --git a/docker-compose.yml b/docker-compose.yml index 4bf0df7..262c0e2 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -22,7 +22,7 @@ services: paper: build: context: . - dockerfile: ./docker/paper/Dockerfile + dockerfile: ./paper/Dockerfile container_name: mc-plugin-paper ports: - "25565:25565" # Minecraftサーバーのポート diff --git a/docker/paper/Dockerfile b/paper/Dockerfile similarity index 97% rename from docker/paper/Dockerfile rename to paper/Dockerfile index 21f01be..38ee4fb 100644 --- a/docker/paper/Dockerfile +++ b/paper/Dockerfile @@ -19,7 +19,7 @@ RUN LATEST_BUILD=$(curl -s "https://api.papermc.io/v2/projects/paper/versions/${ wget -O paper.jar "https://api.papermc.io/v2/projects/paper/versions/${MC_VERSION}/builds/${LATEST_BUILD}/downloads/paper-${MC_VERSION}-${LATEST_BUILD}.jar" # EULAファイルを事前に作成 -COPY docker/paper/eula.txt . +COPY paper/eula.txt . # サーバーを起動するコマンド # メモリ割り当てはPCのスペックに合わせて調整してください (例: -Xms2G -Xmx2G) diff --git a/docker/paper/eula.txt b/paper/eula.txt similarity index 100% rename from docker/paper/eula.txt rename to paper/eula.txt From 4952644e5c4a6623b174ca3cd00430acfa3a7361 Mon Sep 17 00:00:00 2001 From: nka21 <133028205+nka21@users.noreply.github.com> Date: Tue, 26 Aug 2025 14:57:51 +0000 Subject: [PATCH 04/10] =?UTF-8?q?fix:=20Java=E3=81=AE=E3=83=90=E3=83=BC?= =?UTF-8?q?=E3=82=B8=E3=83=A7=E3=83=B3=E3=82=92=2021=20=E3=81=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/build.yml | 6 +++--- .github/workflows/release.yml | 6 +++--- pom.xml | 4 ++-- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 302e245..11f7a3e 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -10,10 +10,10 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 17 + - name: Set up JDK 21 uses: actions/setup-java@v4 with: - java-version: "17" + java-version: "21" distribution: "temurin" - name: Set up Maven @@ -30,4 +30,4 @@ jobs: ${{ runner.os }}-maven- - name: Build & Format Check with Maven - run: mvn -B verify \ No newline at end of file + run: mvn -B verify diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 331a91b..7d167ff 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -14,10 +14,10 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 17 + - name: Set up JDK 21 uses: actions/setup-java@v4 with: - java-version: "17" + java-version: "21" distribution: "temurin" - name: Cache Maven packages @@ -35,4 +35,4 @@ jobs: uses: softprops/action-gh-release@v1 with: generate_release_notes: true - files: target/*.jar \ No newline at end of file + files: target/*.jar diff --git a/pom.xml b/pom.xml index 1340aec..ef04699 100644 --- a/pom.xml +++ b/pom.xml @@ -10,7 +10,7 @@ jar - 17 + 21 UTF-8 1.9.22 @@ -81,4 +81,4 @@ - \ No newline at end of file + From a885b4c08fb91d26e28abeb0b21d835179a33a8c Mon Sep 17 00:00:00 2001 From: nka21 <133028205+nka21@users.noreply.github.com> Date: Tue, 26 Aug 2025 14:58:06 +0000 Subject: [PATCH 05/10] =?UTF-8?q?fix:=20development=20service=E3=82=92?= =?UTF-8?q?=E5=89=8A=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Makefile | 13 ++++--------- docker-compose.yml | 32 +------------------------------- 2 files changed, 5 insertions(+), 40 deletions(-) diff --git a/Makefile b/Makefile index 384f34c..d85c78f 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,6 @@ # Minecraft LogTime Plugin - 開発用Makefile -.PHONY: help build start stop clean logs shell test reload +.PHONY: help build start stop clean logs test reload # デフォルトターゲット help: @@ -10,14 +10,13 @@ help: @echo " make stop - すべてのコンテナを停止" @echo " make clean - ビルド成果物とコンテナを削除" @echo " make logs - Paper サーバーのログを表示" - @echo " make shell - 開発コンテナに入る" @echo " make test - テストを実行" @echo " make reload - プラグインをリビルドしてサーバー再起動" # プラグインをビルド build: @echo "プラグインをビルド中..." - docker-compose run --rm development mvn clean package + mvn clean package # Paper サーバーを起動 start: @@ -40,13 +39,9 @@ clean: logs: docker-compose logs -f paper -# 開発コンテナに入る -shell: - docker-compose run --rm development bash - # テストを実行 test: - docker-compose run --rm development mvn test + mvn test # プラグインをリビルドしてサーバー再起動(開発時に便利) reload: @@ -59,4 +54,4 @@ init: @echo "開発環境を初期化中..." docker-compose build make build - @echo "初期化完了!'make start' でサーバーを起動できます。" \ No newline at end of file + @echo "初期化完了!'make start' でサーバーを起動できます。" diff --git a/docker-compose.yml b/docker-compose.yml index 262c0e2..fa39eba 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,44 +1,14 @@ services: - # 開発用コンテナ - # プラグインのビルド(コンパイル)はこのコンテナ内で行います。 - development: - build: - context: . - dockerfile: ./.devcontainer/Dockerfile - container_name: mc-plugin-dev - working_dir: /app - volumes: - # ローカルのプロジェクトフォルダをコンテナの/appに同期します。 - # これにより、ローカルでコードを編集すると即座にコンテナ内に反映されます。 - - .:/app - # Mavenのキャッシュを永続化し、2回目以降のビルドを高速化します。 - - maven_cache:/root/.m2 - # コンテナを起動し続け、`docker-compose exec`で中に入れるようにします。 - tty: true - stdin_open: true - - # Paperサーバーコンテナ - # 開発したプラグインをテストするためのマイクラサーバーです。 paper: build: context: . dockerfile: ./paper/Dockerfile container_name: mc-plugin-paper ports: - - "25565:25565" # Minecraftサーバーのポート + - "25565:25565" volumes: - # developmentコンテナでビルドしたjarファイルを、サーバーのpluginsフォルダに配置します。 - ./target:/server/plugins - # ワールドデータなどを永続化します。 - paper_data:/server - # サーバーの起動にはEULAへの同意が必要です。 - environment: - EULA: "TRUE" - # developmentコンテナが起動してからpaperが起動するように設定 - depends_on: - - development -# Dockerが管理するデータ領域(ボリューム)の定義 volumes: - maven_cache: paper_data: From 0e9b52cb82488b502562be725d436fb36b900ff6 Mon Sep 17 00:00:00 2001 From: nka21 <133028205+nka21@users.noreply.github.com> Date: Tue, 26 Aug 2025 14:58:17 +0000 Subject: [PATCH 06/10] =?UTF-8?q?refactor:=20=E4=B8=8D=E8=A6=81=E3=81=AA?= =?UTF-8?q?=20.vscode=20=E3=82=92=E5=89=8A=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .vscode/settings.json | 3 --- 1 file changed, 3 deletions(-) delete mode 100644 .vscode/settings.json diff --git a/.vscode/settings.json b/.vscode/settings.json deleted file mode 100644 index 7b016a8..0000000 --- a/.vscode/settings.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "java.compile.nullAnalysis.mode": "automatic" -} \ No newline at end of file From edc8e760327d996a4f1f7a0fb905fad632a47b4e Mon Sep 17 00:00:00 2001 From: nka21 <133028205+nka21@users.noreply.github.com> Date: Tue, 26 Aug 2025 16:04:17 +0000 Subject: [PATCH 07/10] =?UTF-8?q?feat:=20Dockerfile=E3=81=AE=E3=82=AD?= =?UTF-8?q?=E3=83=A3=E3=83=83=E3=82=B7=E3=83=A5=E6=A9=9F=E8=83=BD=E3=82=92?= =?UTF-8?q?=E5=AE=9F=E8=A3=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- paper/Dockerfile | 22 +++++----------------- 1 file changed, 5 insertions(+), 17 deletions(-) diff --git a/paper/Dockerfile b/paper/Dockerfile index 38ee4fb..950038c 100644 --- a/paper/Dockerfile +++ b/paper/Dockerfile @@ -1,26 +1,14 @@ -# ----------------------------------------------------------------- -# docker/paper/Dockerfile -# ----------------------------------------------------------------- -# プラグインをテストするためのPaperサーバー環境を定義します。(1.21.0対応版) -# ----------------------------------------------------------------- - -# Minecraft 1.21 は Java 21 が必須のため、ベースイメージを更新 FROM eclipse-temurin:21-jre-jammy -# 必要なツールをインストール -RUN apt-get update && apt-get install -y wget curl jq && rm -rf /var/lib/apt/lists/* +ENV MC_VERSION="1.21" \ + BUILD_NUMBER="130" + +RUN apt-get update && apt-get install -y wget && rm -rf /var/lib/apt/lists/* -# サーバーの作業ディレクトリを作成 WORKDIR /server -# Paperサーバーの最新ビルドを自動で取得するように修正 -ARG MC_VERSION=1.21 -RUN LATEST_BUILD=$(curl -s "https://api.papermc.io/v2/projects/paper/versions/${MC_VERSION}" | jq -r '.builds[-1]') && \ - wget -O paper.jar "https://api.papermc.io/v2/projects/paper/versions/${MC_VERSION}/builds/${LATEST_BUILD}/downloads/paper-${MC_VERSION}-${LATEST_BUILD}.jar" +RUN wget -O paper.jar "https://api.papermc.io/v2/projects/paper/versions/${MC_VERSION}/builds/${BUILD_NUMBER}/downloads/paper-${MC_VERSION}-${BUILD_NUMBER}.jar" -# EULAファイルを事前に作成 COPY paper/eula.txt . -# サーバーを起動するコマンド -# メモリ割り当てはPCのスペックに合わせて調整してください (例: -Xms2G -Xmx2G) CMD ["java", "-Xms1G", "-Xmx1G", "-jar", "paper.jar", "--nogui"] From 58e14615a7e63a75e4c2d4a7982234e113e155f9 Mon Sep 17 00:00:00 2001 From: nka21 <133028205+nka21@users.noreply.github.com> Date: Tue, 26 Aug 2025 16:27:02 +0000 Subject: [PATCH 08/10] =?UTF-8?q?feat:=20paper=E3=82=B5=E3=83=BC=E3=83=90?= =?UTF-8?q?=E3=83=BC=E3=81=AEDockerfile=E3=82=92=E3=83=9E=E3=83=AB?= =?UTF-8?q?=E3=83=81=E3=82=B9=E3=83=86=E3=83=BC=E3=82=B8=E3=83=93=E3=83=AB?= =?UTF-8?q?=E3=83=89=E3=81=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- paper/Dockerfile | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/paper/Dockerfile b/paper/Dockerfile index 950038c..d9894eb 100644 --- a/paper/Dockerfile +++ b/paper/Dockerfile @@ -1,14 +1,20 @@ -FROM eclipse-temurin:21-jre-jammy +# === ビルド用ステージ === +FROM debian:stable-slim AS builder -ENV MC_VERSION="1.21" \ - BUILD_NUMBER="130" +ARG MC_VERSION="1.21" +ARG BUILD_NUMBER="130" RUN apt-get update && apt-get install -y wget && rm -rf /var/lib/apt/lists/* +RUN wget -O paper.jar "https://api.papermc.io/v2/projects/paper/versions/${MC_VERSION}/builds/${BUILD_NUMBER}/downloads/paper-${MC_VERSION}-${BUILD_NUMBER}.jar" -WORKDIR /server +# === 起動用ステージ === +FROM eclipse-temurin:21-jre-jammy -RUN wget -O paper.jar "https://api.papermc.io/v2/projects/paper/versions/${MC_VERSION}/builds/${BUILD_NUMBER}/downloads/paper-${MC_VERSION}-${BUILD_NUMBER}.jar" +WORKDIR /server +COPY --from=builder /paper.jar . COPY paper/eula.txt . +EXPOSE 25565 + CMD ["java", "-Xms1G", "-Xmx1G", "-jar", "paper.jar", "--nogui"] From ff0e9b891bf5d5f06e8bb7471e2b6196bcb55522 Mon Sep 17 00:00:00 2001 From: nka21 <133028205+nka21@users.noreply.github.com> Date: Tue, 26 Aug 2025 16:40:24 +0000 Subject: [PATCH 09/10] =?UTF-8?q?feat:=20devcontainer=E3=81=A8docker-compo?= =?UTF-8?q?se=E3=82=92=E9=80=A3=E6=90=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .devcontainer/Dockerfile | 6 ------ .devcontainer/devcontainer.json | 10 +++++----- docker-compose.yml | 12 ++++++++++++ 3 files changed, 17 insertions(+), 11 deletions(-) delete mode 100644 .devcontainer/Dockerfile diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile deleted file mode 100644 index 5f4006c..0000000 --- a/.devcontainer/Dockerfile +++ /dev/null @@ -1,6 +0,0 @@ -FROM mcr.microsoft.com/devcontainers/java:21 - -USER root -RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \ - && apt-get -y install --no-install-recommends maven -USER vscode \ No newline at end of file diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index c8f872d..4dfc68a 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -1,8 +1,9 @@ { "name": "Minecraft Plugin Development", - "build": { - "dockerfile": "Dockerfile" - }, + "image": "mcr.microsoft.com/devcontainers/java:21", + "dockerComposeFile": "docker-compose.yml", + "service": "dev", + "workspaceFolder": "/workspace", "customizations": { "vscode": { "extensions": [ @@ -11,6 +12,5 @@ ] } }, - "forwardPorts": [25565], "postCreateCommand": "mvn dependency:go-offline" -} \ No newline at end of file +} diff --git a/docker-compose.yml b/docker-compose.yml index fa39eba..6d6500e 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,4 +1,13 @@ services: + dev: + build: + context: . + dockerfile: Dockerfile + volumes: + - .:/workspace:cached + - m2_cache:/home/vscode/.m2 + command: sleep infinity + paper: build: context: . @@ -9,6 +18,9 @@ services: volumes: - ./target:/server/plugins - paper_data:/server + depends_on: + - dev volumes: paper_data: + m2_cache: From 0943190712e06a0f031bc0e23d8dd0b60d5c97bb Mon Sep 17 00:00:00 2001 From: nka21 <133028205+nka21@users.noreply.github.com> Date: Tue, 26 Aug 2025 17:29:52 +0000 Subject: [PATCH 10/10] =?UTF-8?q?feat:=20Dockerfile=E3=81=AE=E3=83=91?= =?UTF-8?q?=E3=82=B9=E3=82=92.devcontainer=E3=81=AB=E5=A4=89=E6=9B=B4?= =?UTF-8?q?=E3=81=97=E3=80=81docker-compose.yml=E3=82=92=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .devcontainer/Dockerfile | 1 + .devcontainer/devcontainer.json | 3 +-- docker-compose.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) create mode 100644 .devcontainer/Dockerfile diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile new file mode 100644 index 0000000..147541c --- /dev/null +++ b/.devcontainer/Dockerfile @@ -0,0 +1 @@ +FROM mcr.microsoft.com/devcontainers/java:21 diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 4dfc68a..98b9f44 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -1,7 +1,6 @@ { "name": "Minecraft Plugin Development", - "image": "mcr.microsoft.com/devcontainers/java:21", - "dockerComposeFile": "docker-compose.yml", + "dockerComposeFile": "../docker-compose.yml", "service": "dev", "workspaceFolder": "/workspace", "customizations": { diff --git a/docker-compose.yml b/docker-compose.yml index 6d6500e..c4f53df 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -2,7 +2,7 @@ services: dev: build: context: . - dockerfile: Dockerfile + dockerfile: ./.devcontainer/Dockerfile volumes: - .:/workspace:cached - m2_cache:/home/vscode/.m2