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에서 페이지 새로고침 후 사용자 정의 리소스 유형 속성 값이 사라지는 이유는 무엇인가요?
이는 GET_ALL_RESOURCE_TYPES SQL 쿼리의 INNER JOIN으로 인해 발생하는 알려진 버그입니다(이슈 #1341). 사용자 정의 속성이 특정 리소스 유형으로 제한되지 않은 경우(즉, custom_attribute_entities에 행이 없는 경우), 조인이 값을 필터링하여 다시 로드한 후 빈 상태로 나타납니다. 임시 해결 방법으로 Admin > Manage Attributes에서 속성을 편집하고 모든 유형 또는 특정 리소스 유형에 할당하면 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 로그인이 실패하는 문제를 해결하는 방법?
PHP 8.3이 pear/net_ldap2에서 E_DEPRECATED 알림(코드 8192)을 발생시키고 Slim이 이 알림을 예외로 변환하기 때문에 API가 실패합니다. 웹 로그인은 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