Pumpkin Minecraft サーバーのデプロイメント: Docker、Java/Bedrock の互換性およびパフォーマンスの検証

Pumpkin Rust Minecraft サーバー導入ガイドでは、Docker の起動、ポートと構成、Java/Bedrock の互換性、ワールド データのバックアップ、パフォーマンス テスト、開発段階のリスクについて説明しています。

Pumpkin によるこのチュートリアルは、タイトルの特定のタスクに焦点を当てています。 Pumpkin は、プロジェクトの成熟度に基づいて本番環境での使用を評価する必要があります。 Minecraft サーバーの移行は、ログインできるかどうかだけではなく、ワールド データ、プラグインまたはプロトコルの互換性、遅延とロールバックも確認します。

以下は、テスト環境と取り消し可能なデータを使用したデモンストレーションです。アカウント、キー、マシン制御、投資、または緊急通信が関係する場合は、手動で確認する必要があります。

まず、Pumpkin の成熟度とサポート範囲を確認します

このセクションでは、「最初に Pumpkin の成熟度とサポート範囲を確認する」ことのみを扱います。まず現在の状態を保存してから、最小限のテストを実行します。複数の条件を同時に変更しないでください。

1
# 阅读 README、release 与已知问题

Pumpkin の場合は、この境界を念頭に置いて結果を判断する必要があります。Pumpkin は、プロジェクトの成熟度に応じて生産用途を評価する必要があります。 Minecraft サーバーの移行は、ログインできるかどうかだけでなく、ワールド データ、プラグインやプロトコルの互換性、遅延やロールバックも確認できます。

結果が再現できない場合は、バージョン、入力、ログを記録し、テストの範囲を絞ります。

Java バージョンと Bedrock バージョンは同じプロトコルではありません

次の順序で実行することをお勧めします。

  1. 実際のバージョンとソースを確認します。
  2. テスト アカウント、テスト ディレクトリ、またはテスト デバイスを使用します。
  3. 取り消し可能なアクションを実行します。
  4. 出力、終了コード、またはスクリーンショットを保存します。
  5. 変更を元に戻して再確認します。
1
Test-NetConnection 127.0.0.1 -Port 25565

完了基準は、コマンドがエラーを報告しないだけではなく、「Java バージョンと Bedrock バージョンが同じプロトコルではない」ことと検証可能な結果が得られることです。

空のテストワールドから開始します

チェック項目 合格基準 停止信号
空のテストワールドから始める 入力、出力、権限の範囲をクリアする ツールが自動的に操作範囲を拡張
出典 公式ウェアハウスまたは元のデータに戻すことができます 未知の鏡や受け売りの結論に頼る
セキュリティ ログにシークレット値がありません トークン、Cookie、またはプライベート データが存在する
回復 実行前の状態に戻る機能 バックアップや元に戻す方法はありません
1
New-Item -ItemType Directory -Path .\pumpkin-test -Force

停止信号が表示された場合は、最初に再開し、次のステップに進まないでください。

Docker コンテナは必要なゲーム ポートのみを開きます

このセクションでは、「Docker コンテナーは必要なゲーム ポートのみを開きます」についてのみ説明します。まず現在の状態を保存してから、最小限のテストを実行します。複数の条件を同時に変更しないでください。

1
docker version

Pumpkin の場合は、この境界を念頭に置いて結果を判断する必要があります。Pumpkin は、プロジェクトの成熟度に応じて生産用途を評価する必要があります。 Minecraft サーバーの移行は、ログインできるかどうかだけでなく、ワールド データ、プラグインやプロトコルの互換性、遅延やロールバックも確認できます。

結果が再現できない場合は、バージョン、入力、ログを記録し、テストの範囲を絞ります。

初回起動時にログを完全に保存する

次の順序で実行することをお勧めします。

  1. 実際のバージョンとソースを確認します。
  2. テスト アカウント、テスト ディレクトリ、またはテスト デバイスを使用します。
  3. 取り消し可能なアクションを実行します。
  4. 出力、終了コード、またはスクリーンショットを保存します。
  5. 変更を元に戻して再確認します。
1
docker logs --tail 200 pumpkin

完了基準は、単にコマンドがエラーを報告しないのではなく、「初回起動時のログを完全に保存する」ことで検証可能な結果が得られることです。

クライアントは入力後にどのようなアクションをテストできますか?

チェック項目 合格基準 停止信号
を入力した後、クライアントはどのようなアクションをテストできますか?入力、出力、および権限の範囲をクリアする ツールは操作範囲を自動的に拡張します
出典 公式ウェアハウスまたは元のデータに戻すことができます 未知の鏡や受け売りの結論に頼る
セキュリティ ログにシークレット値がありません トークン、Cookie、またはプライベート データが存在する
回復 実行前の状態に戻る機能 バックアップや元に戻す方法はありません
1
# 登录、移动、放置方块、聊天、重连

停止信号が表示された場合は、最初に再開し、次のステップに進まないでください。

オンライン上の人数でパフォーマンスを判断しないでください

このセクションでは、「パフォーマンスをオンラインの人数で判断しないでください」についてのみ説明します。まず現在の状態を保存してから、最小限のテストを実行します。複数の条件を同時に変更しないでください。

1
docker stats --no-stream pumpkin

Pumpkin の場合は、この境界を念頭に置いて結果を判断する必要があります。Pumpkin は、プロジェクトの成熟度に応じて生産用途を評価する必要があります。 Minecraft サーバーの移行は、ログインできるかどうかだけでなく、ワールド データ、プラグインやプロトコルの互換性、遅延やロールバックも確認できます。

結果が再現できない場合は、バージョン、入力、ログを記録し、テストの範囲を絞ります。

レコードティック、CPU、メモリ、レイテンシ

次の順序で実行することをお勧めします。

  1. 実際のバージョンとソースを確認します。
  2. テスト アカウント、テスト ディレクトリ、またはテスト デバイスを使用します。
  3. 取り消し可能なアクションを実行します。
  4. 出力、終了コード、またはスクリーンショットを保存します。
  5. 変更を元に戻して再確認します。
1
docker stats --no-stream pumpkin

完了基準は、コマンドが単にエラーを報告しないのではなく、「ティック、CPU、メモリ、遅延を記録」して検証可能な結果を取得することです。

世界を保存した後に再起動の一貫性を確認する

チェック項目 合格基準 停止信号
世界を保存した後に再起動の一貫性を確認する 入力、出力、および権限の範囲をクリアする ツールが自動的に操作範囲を拡張
出典 公式ウェアハウスまたは元のデータに戻すことができます 未知の鏡や受け売りの結論に頼る
セキュリティ ログにシークレット値がありません トークン、Cookie、またはプライベート データが存在する
回復 実行前の状態に戻る機能 バックアップや元に戻す方法はありません
1
docker restart pumpkin

停止信号が表示された場合は、最初に再開し、次のステップに進まないでください。

プラグインとモジュールの互換性は別途確認する必要があります

このセクションでは、「プラグインとモジュールの互換性を別途確認する必要がある」ことについてのみ説明します。まず現在の状態を保存してから、最小限のテストを実行します。複数の条件を同時に変更しないでください。

1
docker logs pumpkin | Select-String -Pattern 'error|unsupported'

Pumpkin の場合は、この境界を念頭に置いて結果を判断する必要があります。Pumpkin は、プロジェクトの成熟度に応じて生産用途を評価する必要があります。 Minecraft サーバーの移行は、ログインできるかどうかだけでなく、ワールド データ、プラグインやプロトコルの互換性、遅延やロールバックも確認できます。

結果が再現できない場合は、バージョン、入力、ログを記録し、テストの範囲を絞ります。

Bedrock 互換性レイヤーはバージョン間でテストする必要がある

次の順序で実行することをお勧めします。

  1. 実際のバージョンとソースを確認します。
  2. テスト アカウント、テスト ディレクトリ、またはテスト デバイスを使用します。
  3. 取り消し可能なアクションを実行します。
  4. 出力、終了コード、またはスクリーンショットを保存します。
  5. 変更を元に戻して再確認します。
1
# 使用两个受支持客户端版本分别连接

完了基準は、コマンドがたまたまエラーを報告しないということではなく、検証可能な結果を得るために「Bedrock 互換性レイヤーをバージョン間でテストする必要がある」ということです。

パブリック ネットワークを開く前にアクセス制御を設定する

チェック項目 合格基準 停止信号
パブリック ネットワークを開く前にアクセス制御を設定する 入力、出力、権限の範囲をクリアする ツールが自動で操作範囲を拡大
出典 公式ウェアハウスまたは元のデータに戻すことができます 未知の鏡や受け売りの結論に頼る
セキュリティ ログにシークレット値がありません トークン、Cookie、またはプライベート データが存在する
回復 実行前の状態に戻る機能 バックアップや元に戻す方法はありません
1
Get-NetFirewallRule -Enabled True | Select-Object -First 20

停止信号が表示された場合は、最初に再開し、次のステップに進まないでください。

ワールド、設定、プレーヤーのデータをバックアップする

このセクションでは、「ワールド、設定、およびプレーヤー データのバックアップ」のみを扱います。まず現在の状態を保存してから、最小限のテストを実行します。複数の条件を同時に変更しないでください。

1
docker volume inspect pumpkin-data

Pumpkin の場合は、この境界を念頭に置いて結果を判断する必要があります。Pumpkin は、プロジェクトの成熟度に応じて生産用途を評価する必要があります。 Minecraft サーバーの移行は、ログインできるかどうかだけでなく、ワールド データ、プラグインやプロトコルの互換性、遅延やロールバックも確認できます。

結果が再現できない場合は、バージョン、入力、ログを記録し、テストの範囲を絞ります。

イメージをアップグレードするには、まずテスト インスタンスをコピーします

次の順序で実行することをお勧めします。

  1. 実際のバージョンとソースを確認します。
  2. テスト アカウント、テスト ディレクトリ、またはテスト デバイスを使用します。
  3. 取り消し可能なアクションを実行します。
  4. 出力、終了コード、またはスクリーンショットを保存します。
  5. 変更を元に戻して再確認します。
1
docker image ls

完了基準は、コマンドが単にエラーを報告しないのではなく、検証可能な結果を得るために「最初にイメージをアップグレードし、テスト インスタンスをコピーする」ことです。

異常なシャットダウン後の世界の損傷を確認する

チェック項目 合格基準 停止信号
異常なシャットダウン後の世界の損傷を確認する 入力、出力、権限の範囲が明確 ツールが自動的に動作範囲を拡大
出典 公式ウェアハウスまたは元のデータに戻すことができます 未知の鏡や受け売りの結論に頼る
セキュリティ ログにシークレット値がありません トークン、Cookie、またはプライベート データが存在する
回復 実行前の状態に戻る機能 バックアップや元に戻す方法はありません
1
docker logs --since 10m pumpkin

停止信号が表示された場合は、最初に再開し、次のステップに進まないでください。

本番移行の終了条件

このセクションでは、「本番移行の終了条件」のみを扱います。まず現在の状態を保存してから、最小限のテストを実行します。複数の条件を同時に変更しないでください。

1
docker ps --filter name=pumpkin

Pumpkin の場合は、この境界を念頭に置いて結果を判断する必要があります。Pumpkin は、プロジェクトの成熟度に応じて生産用途を評価する必要があります。 Minecraft サーバーの移行は、ログインできるかどうかだけでなく、ワールド データ、プラグインやプロトコルの互換性、遅延やロールバックも確認できます。

結果が再現できない場合は、バージョン、入力、ログを記録し、テストの範囲を絞ります。

ホワイトリストと管理者の権限は、最初にテスト サーバーで検証する必要があります。

次の順序で実行することをお勧めします。

  1. 実際のバージョンとソースを確認します。
  2. テスト アカウント、テスト ディレクトリ、またはテスト デバイスを使用します。
  3. 取り消し可能なアクションを実行します。
  4. 出力、終了コード、またはスクリーンショットを保存します。
  5. 変更を元に戻して再確認します。
1
docker logs --tail 100 pumpkin

完了基準は、コマンドがたまたまエラーを報告しないということではなく、検証可能な結果を得るために「最初にテスト サーバー上でホワイトリストと管理者の権限が検証される」ということです。

3 人以上のプレイヤーが同時に接続すると負荷が変化します

チェック項目 合格基準 停止信号
3 人以上のプレイヤーが同時に接続すると負荷が変化する 入力、出力、権限の範囲を明確にする ツールが自動で操作範囲を拡大
出典 公式ウェアハウスまたは元のデータに戻すことができます 未知の鏡や受け売りの結論に頼る
セキュリティ ログにシークレット値がありません トークン、Cookie、またはプライベート データが存在する
回復 実行前の状態に戻る機能 バックアップや元に戻す方法はありません
1
docker stats --no-stream pumpkin

停止信号が表示された場合は、最初に再開し、次のステップに進まないでください。

ロールバック後も、クライアントのバージョンを再テストする必要があります

このセクションでは、「ロールバック後にクライアントのバージョンを再テストする必要がある」ことのみを扱います。まず現在の状態を保存してから、最小限のテストを実行します。複数の条件を同時に変更しないでください。

1
docker logs --since 5m pumpkin

Pumpkin の場合は、この境界を念頭に置いて結果を判断する必要があります。Pumpkin は、プロジェクトの成熟度に応じて生産用途を評価する必要があります。 Minecraft サーバーの移行は、ログインできるかどうかだけでなく、ワールド データ、プラグインやプロトコルの互換性、遅延やロールバックも確認できます。

結果が再現できない場合は、バージョン、入力、ログを記録し、テストの範囲を絞ります。

パンプキンの最終検査

  • 使用されたバージョンとソースが文書化されています。
  • テスト入力と正式なデータは分離されています。
  • コマンド、設定と実際の出力を対応させることができます。
  • 障害が発生したパスは少なくとも 1 回アクティブにテストされました。
  • キー、アカウント、個人データは Git やログに入力されません。
  • アップグレード、停止、再開のための明確なアクションがあります。

それでも結果がどのように発生するかを説明できない場合は、アクセス許可を拡張したり、既存の安定したプロセスを置き換えたりせずに、Pumpkin をテスト環境に維持してください。