EasyBot

EASYBOT GUIDE

BunでDiscord Botを起動する方法|package.jsonとロックファイル

BunランタイムでBotを動かす準備、bun.lock、startスクリプト、npm互換パッケージの注意点を説明します。

BunはJavaScript/TypeScriptのランタイム兼パッケージマネージャーです。BotをBunで動かす時は、起動コマンドと依存ロックファイルをそろえ、Node.js向けライブラリの互換性を確認します。

プロジェクトを準備する

package.jsonに起動スクリプトを定義し、ローカルでBunから実行できることを確認します。TypeScriptを使う場合も、実際の本番コマンドで起動試験を行います。

  • bun --versionで利用バージョンを確認する
  • package.jsonに明示的なstartスクリプトを作る
  • bun run startで起動できるか確かめる

ロックファイルを含める

bun.lockまたはbun.lockbは依存バージョンを固定するために使います。開発時に更新したらpackage.jsonと一緒に管理し、意図しないnpmロックとの混在を避けます。

  1. 利用するBunバージョンに合うロック形式を確認する
  2. bun install後の差分をレビューする
  3. 不要なnode_modulesをZIPに含めない

Node.js互換性

Bunで動くかは使うライブラリやネイティブ拡張に左右されます。Discord SDK、ファイル処理、ネイティブ依存を含む場合は、Bun環境で個別に試します。

  • 起動時に使う主要機能をテストする
  • ネイティブ依存がBun対応か確認する
  • 問題が続く場合はサポートされるNode.js版と比較する

ホスティングへアップロード

起動時に依存を再導入する構成では、ロックファイルをZIPに含めます。installログが長い時は、失敗箇所、ディスク容量、ネットワーク状態を確認します。

  • package.jsonとロックファイルを同じ階層に置く
  • 正しいランタイムを作成時に選ぶ
  • 起動ログでinstallとstartの両方を確認する