LibreBooking
会議室や設備などの共有リソースの予約を管理するための、モバイルフレンドリーで拡張可能なオープンソースのリソーススケジューリングシステム。
スマートダウンロード
プロジェクトのホームページへ
インストーラはまだありません — ソースリポジトリをご覧ください
会議室予約システムに似ていますが、無料のオープンソースで、セルフホストが可能で、Docker に対応しています。
主な機能
- 複数リソースの同時予約とキュー待機
- ロールベースのアクセス制御(管理者/ユーザー)
- クォータとクレジットの仕組み
- 詳細な使用統計とレポート
- レスポンシブな Bootstrap 5 インターフェース、モバイル対応
できないこと
- •PHP 8.2+ および MySQL 8.0+/MariaDB 10.6+ を使用する必要があります。2. 公開 Demo は 20 分ごとにリセットされ、データは永続化されません。3. 旧バージョンの Booked Scheduler からの移行には調整が必要な場合があります。4. 本番環境では HTTPS の設定とデータベースの定期的なバックアップを推奨します。
使用例
- 社内の会議室、プロジェクター、駐車スペースの予約
- シェアオフィス(コワーキングスペース)のワークステーション、会議室の管理
- 学校の実験室、設備、器材の予約
- コミュニティの活動場所、設備のレンタル管理
詳細説明
LibreBooking は、Booked Scheduler からフォークされたオープンソースのリソーススケジューリングプラットフォームです。柔軟でモバイルフレンドリーかつ拡張可能なインターフェースを提供し、組織が会議室、設備、車両などの共有リソースの予約を管理できるよう支援します。主な機能には、複数リソースの予約とキャンセル待ちリスト、ロールベースのアクセス制御、クォータとクレジット、詳細なレポート、レスポンシブな Bootstrap 5 インターフェース、カスタムテーマ、プラグインアーキテクチャが含まれます。Docker でのデプロイと MySQL/MariaDB データベースをサポートし、ICS を介してカレンダーと統合できます。このプロジェクトは活発なコミュニティを持ち、テスト用の公開 Demo インスタンスを提供しています。
トラブルシューティング & FAQ (2)
トラブル対応なぜLibreBookingでは、ページリフレッシュ後にカスタムリソースタイプの属性値が消えてしまうのか?
これは既知のバグ(issue #1341)で、GET_ALL_RESOURCE_TYPES SQLクエリ内のINNER JOINが原因です。カスタム属性が特定のリソースタイプに制限されていない場合(つまり、custom_attribute_entitiesに行がない場合)、JOINによって値がフィルタリングされ、リロード後に空白で表示されます。一時的な回避策として、管理画面 > 属性管理で属性を編集し、すべてまたは特定のリソースタイプに割り当ててください。これによりcustom_attribute_entitiesにエントリが追加され、値が表示されるようになります。恒久的な修正としては、lib/Database/Commands/Queries.phpを編集し、attribute_listを構築するクエリ内でcustom_attribute_entitiesとのINNER JOINをLEFT JOINに変更してください。
トラブル対応PHP 8.3でNet_LDAP2_Search::current()の戻り値型に関するSlimエラーが原因でLibreBookingのLDAP REST APIログインが失敗する問題を修正する方法
APIが失敗するのは、PHP 8.3がpear/net_ldap2からE_DEPRECATED通知(コード8192)を発行し、Slimがその通知を例外に変換するためです。WebログインはSlimのエラーハンドラーを使用しないため、引き続き成功することができます。推奨される修正:pear/net_ldap2をPHP 8.3互換のリリースに更新してください。利用可能な更新がない場合は、vendor/pear/net_ldap2/Net/LDAP2/Search.phpにパッチを適用し、イテレータメソッドに互換性属性を追加してください:#[\ReturnTypeWillChange] public function current() { ... }。同様の非推奨警告が表示される場合は、key()、next()、rewind()、valid()にも同じ属性を追加してください。vendor/はComposerによって上書きされるため、composer-patchesまたはプライベートフォークでパッチを維持管理し、その後composer update pear/net_ldap2を実行してPHP-FPMを再起動してください。例:sudo systemctl restart php8.3-fpm。一時的な回避策:plugins/Authentication/Ldap/Ldap2Wrapper.phpで、エラーを引き起こすnet_ldap2コードの周囲でE_DEPRECATEDを抑制します:$oldLevel = error_reporting(error_reporting() & ~E_DEPRECATED); try { class_exists('Net_LDAP2'); $ldap = Net_LDAP2::connect($config); // current()がそこでトリガーされる場合は、LDAP検索/反復処理をこのブロック内に保持してください } finally { error_reporting($oldLevel); }。最後の手段としてのみ、Slim APIがリクエストを処理する前にerror_reporting(E_ALL & ~E_DEPRECATED)を設定してください。これはLDAPのものだけでなく、すべての非推奨通知を隠します。
タグ
はじめ方
ソフトウェアをインストール
ダウンロードしたインストーラをダブルクリックし、指示に従ってください
ステップ1:Docker を使ったデプロイが最も簡単です。まず Docker と Docker Compose をインストールします
ステップ2:LibreBooking Docker リポジトリをクローンします:git clone https://github.com/LibreBooking/docker.git
ステップ3:ディレクトリに移動して docker-compose up -d を実行し、起動を待ちます
- ステップ1:Docker を使ったデプロイが最も簡単です。まず Docker と Docker Compose をインストールします
- ステップ2:LibreBooking Docker リポジトリをクローンします:git clone https://github.com/LibreBooking/docker.git
- ステップ3:ディレクトリに移動して docker-compose up -d を実行し、起動を待ちます
チェックサムがありません
このプロジェクトは GitHub Release ページに SHA-256 チェックサムを公開していません
SHA256 チェックサム
チェックサムなし
GitHub Releases から直接ダウンロードし、ファイルの整合性をご自身で確認してください
本プラットフォーム上のすべての SHA-256 チェックサムは、プロジェクトの公式 GitHub Release ページから抽出されたもので、一切の改変はありません。GitHub Releases ページで独自に検証できます。
オープンソースの透明性
GitHub ソースを見るアンインストール情報
Docker デプロイの場合:docker-compose down -v でコンテナとデータボリュームを停止・削除します。手動デプロイの場合は、対応する Web ディレクトリとデータベースを削除するだけです。
追加の依存関係なし
ダウンロード後すぐに使用可能。追加のランタイムは不要です。
問題が発生?以下のFAQを確認
2 FAQs