Koel
Web 기반 개인 음악 스트리밍 서비스로, 세련된 인터페이스를 제공하며 셀프 호스팅이 가능하고 다양한 플랫폼을 지원합니다.
스마트 다운로드
프로젝트 홈페이지 방문
아직 설치 프로그램이 없습니다 — 소스 저장소로 이동하세요
나만의 개인 음악 서버를 직접 구축하고, 언제 어디서나 음악을 감상하세요.
주요 기능
- Vue + Laravel 기반의 모던한 웹 인터페이스, 빠른 반응 속도
- 다양한 오디오 형식 지원 (MP3, FLAC, OGG 등)
- 재생 목록 관리, 검색, 아티스트/앨범 탐색
- 공식 모바일 앱 (iOS 및 Android)
- 자체 호스팅으로 데이터 프라이버시 완벽 제어
할 수 없는 것
- •일정 수준의 서버 운영 지식이 필요하며, 개발자가 아닌 사용자에게는 다소 진입 장벽이 있습니다. 기본적으로 음악 파일이 포함되어 있지 않으므로 직접 업로드해야 합니다. 모바일 웹 버전은 기능이 제한되어 있으므로 공식 앱 사용을 권장합니다.
사용 사례
- 개인 음악 서버를 구축하여 网易云/Spotify 등 상용 서비스 대체
- 홈 네트워크에서 음악 라이브러리를 공유하고 여러 기기에서 동기화 재생
상세 설명
Koel은 Web 기반 개인 오디오 스트리밍 서비스로, 언제 어디서나 자신의 음악 컬렉션을 감상할 수 있습니다. 프론트엔드는 Vue.js를, 백엔드는 Laravel을 사용하며, 아름답고 반응형인 인터페이스를 갖추고 있어 음악 탐색, 검색 및 재생을 지원합니다. 다양한 오디오 형식을 지원하고, 재생 목록 관리 기능을 제공하며, 공식 iOS 및 Android 모바일 앱도 제공합니다. Koel은 Web 개발자와 음악 애호가를 위한 서비스로, 제3자 클라우드 서비스에 의존하지 않고 자신의 음악 라이브러리를 완전히 제어할 수 있습니다.
문제 해결 & FAQ (2)
문제 해결Koel 스캔이 데이터베이스에서 삭제된 곡을 제거하지 않는 문제를 어떻게 해결하나요?
이 문제는 필수 Laravel 환경 변수(특히 QUEUE_CONNECTION)가 누락되어 스캔 후 이벤트 리스너가 실행되지 않을 때 발생합니다. .env 파일을 .env.example과 비교하여 예제 파일 하단에 있는 Laravel 관련 변수들을 추가하세요. 별도의 큐 워커가 없는 표준 Koel/Docker 설정의 경우 QUEUE_CONNECTION=sync로 설정되어 있는지 확인하세요. 그런 다음 컨테이너를 재시작하고 다시 스캔하세요:
docker restart <koel-container>
docker exec -it <koel-container> php artisan koel:scan
스캔이 완료되면 스토리지에서 파일이 삭제된 곡들은 songs 테이블에서 제거되고 웹 인터페이스에서도 사라집니다.
문제 해결Koel에 대용량 FLAC/오디오 파일을 업로드할 때 발생하는 'Server error' 오류 해결 방법 (50MB 제한)?
Koel의 기본 50MB 업로드 제한은 PHP의 upload_max_filesize와 post_max_size 설정에서 비롯됩니다. 이를 높이려면:
1. Koel 저장소 루트에 있는 .htaccess.example 파일을 .htaccess로 복사하세요 (아직 없는 경우).
2. 파일 하단의 값을 편집하여 50M을 원하는 제한 값으로 변경하세요. 예:
php_value upload_max_filesize 800M
php_value post_max_size 800M3. 파일을 저장하세요 — Apache는
.htaccess 변경 사항을 즉시 적용하므로 재시작이 필요 없습니다.
참고: 공식 Koel Docker 이미지를 사용하는 경우, 번들로 포함된 php.ini에 이미 제한이 800M으로 설정되어 있으므로 .htaccess도 해당 값에 맞추세요. 또한 Cloudflare를 통해 프록시하는 경우, 무료 등급에서는 요청/응답 크기가 100MB로 제한되므로 이보다 큰 파일을 업로드할 때는 Cloudflare 프록시를 일시적으로 비활성화(DNS 전용 모드)하세요.
태그
시작하기
소프트웨어 설치
다운로드한 설치 프로그램을 더블 클릭하고 안내에 따르세요
1단계: PHP 8.1+, MySQL/MariaDB 및 Composer 환경 준비
2단계: 프로젝트를 클론하고 composer install을 실행하여 종속성 설치
3단계: php artisan koel:init을 실행하여 설정 및 데이터베이스 초기화
- 1단계: PHP 8.1+, MySQL/MariaDB 및 Composer 환경 준비
- 2단계: 프로젝트를 클론하고 composer install을 실행하여 종속성 설치
- 3단계: php artisan koel:init을 실행하여 설정 및 데이터베이스 초기화
체크섬 없음
이 프로젝트는 GitHub Release 페이지에 SHA-256 체크섬을 게시하지 않았습니다
SHA256 체크섬
체크섬 없음
GitHub Releases에서 직접 다운로드하고 파일 무결성을 직접 확인하세요
이 플랫폼의 모든 SHA-256 체크섬은 프로젝트의 공식 GitHub Release 페이지에서 추출되었으며, 어떠한 변경도 없습니다. GitHub Releases 페이지에서 직접 검증할 수 있습니다.
오픈소스 투명성
GitHub 소스 보기제거 정보
프로젝트 디렉터리를 삭제하고 해당 데이터베이스를 삭제하면 됩니다. Docker로 배포한 경우 컨테이너와 이미지를 삭제하세요.
추가 의존성 없음
다운로드 후 바로 사용 가능. 추가 런타임이 필요하지 않습니다.
문제 발생? 아래 FAQ 확인
2 FAQs