[GH-ISSUE #71] Object Storage usage #52

Closed
opened 2026-02-26 02:31:56 +03:00 by kerem · 13 comments
Owner

Originally created by @pascalschwientek on GitHub (Dec 16, 2015).
Original GitHub issue: https://github.com/koel/koel/issues/71

I only took a quick look at the source code but as far as i could see, currently you are limited to the local filesystem, correct?

Support for Object Storage API´s (S3, Riak CS etc) would be a useful addition.

That would make the usage of large music sets easy even on a small VM since storage is outsourced to a scalable storage system.

Originally created by @pascalschwientek on GitHub (Dec 16, 2015). Original GitHub issue: https://github.com/koel/koel/issues/71 I only took a quick look at the source code but as far as i could see, currently you are limited to the local filesystem, correct? Support for Object Storage API´s (S3, Riak CS etc) would be a useful addition. That would make the usage of large music sets easy even on a small VM since storage is outsourced to a scalable storage system.
kerem closed this issue 2026-02-26 02:31:56 +03:00
Author
Owner

@phanan commented on GitHub (Dec 16, 2015):

This is a nice idea. I think about it, thanks.

<!-- gh-comment-id:165091478 --> @phanan commented on GitHub (Dec 16, 2015): This is a nice idea. I think about it, thanks.
Author
Owner

@pascalschwientek commented on GitHub (Dec 16, 2015):

i Opend the issue as reference, if you want i can work on a PR this weekend.

<!-- gh-comment-id:165095016 --> @pascalschwientek commented on GitHub (Dec 16, 2015): i Opend the issue as reference, if you want i can work on a PR this weekend.
Author
Owner

@phanan commented on GitHub (Dec 16, 2015):

Yeah certainly! Thanks in advance!

<!-- gh-comment-id:165095365 --> @phanan commented on GitHub (Dec 16, 2015): Yeah certainly! Thanks in advance!
Author
Owner

@bhulsman commented on GitHub (Dec 17, 2015):

That would be great! Uploading a big music collection to a webserver (on VPS for example) is usually not an option.

<!-- gh-comment-id:165419709 --> @bhulsman commented on GitHub (Dec 17, 2015): That would be great! Uploading a big music collection to a webserver (on VPS for example) is usually not an option.
Author
Owner

@phanan commented on GitHub (Dec 17, 2015):

Uploading a big music collection to a webserver (on VPS for example) is usually not an option.

When I'm excited with the idea of supporting other storages, I don't really see much difference between them. At the end of the day you still store your files on the internet, right?

<!-- gh-comment-id:165445265 --> @phanan commented on GitHub (Dec 17, 2015): > Uploading a big music collection to a webserver (on VPS for example) is usually not an option. When I'm excited with the idea of supporting other storages, I don't really see much difference between them. At the end of the day you still store your files on the internet, right?
Author
Owner

@bhulsman commented on GitHub (Dec 17, 2015):

Not for all situations I guess. Think of a local network hosted version of koel, it would be great to use a share/NFS/FTP/etc. as a storage option. Maybe because koel itself runs on a lightweight webserver and storage should be accessable by more then one person.

Besides, on the internet a webserver might not have more then 1 GB of space, while using a separate storage solution (S3, Dropbox, OwnCloud, etc.) offers much more space.

Technically abstracting the Storage into a driverbases solution would also be a good idea. Laravel already has something like that: http://laravel.com/docs/5.1/filesystem

<!-- gh-comment-id:165446652 --> @bhulsman commented on GitHub (Dec 17, 2015): Not for all situations I guess. Think of a local network hosted version of koel, it would be great to use a share/NFS/FTP/etc. as a storage option. Maybe because koel itself runs on a lightweight webserver and storage should be accessable by more then one person. Besides, on the internet a webserver might not have more then 1 GB of space, while using a separate storage solution (S3, Dropbox, OwnCloud, etc.) offers much more space. Technically abstracting the Storage into a driverbases solution would also be a good idea. Laravel already has something like that: http://laravel.com/docs/5.1/filesystem
Author
Owner

@phanan commented on GitHub (Dec 17, 2015):

I guess you have a point there. And yes Flysystem is the best candidate.

On Thu, Dec 17, 2015 at 8:59 PM, Bernardo notifications@github.com wrote:

Not for all situations I guess. Think of a local network hosted version of
koel, it would be great to use a share/NFS/FTP/etc. as a storage option.
Maybe because koel itself runs on a lightweight webserver and storage
should be accessable by more then one person.

Besides, on the internet a webserver might not have more then 1 GB of
space, while using a separate storage solution (S3, Dropbox, OwnCloud,
etc.) offers much more space.

Technically abstracting the Storage into a driverbases solution would also
be a good idea. Laravel already has something like that:
http://laravel.com/docs/5.1/filesystem


Reply to this email directly or view it on GitHub
https://github.com/phanan/koel/issues/71#issuecomment-165446652.

<!-- gh-comment-id:165447098 --> @phanan commented on GitHub (Dec 17, 2015): I guess you have a point there. And yes Flysystem is the best candidate. On Thu, Dec 17, 2015 at 8:59 PM, Bernardo notifications@github.com wrote: > Not for all situations I guess. Think of a local network hosted version of > koel, it would be great to use a share/NFS/FTP/etc. as a storage option. > Maybe because koel itself runs on a lightweight webserver and storage > should be accessable by more then one person. > > Besides, on the internet a webserver might not have more then 1 GB of > space, while using a separate storage solution (S3, Dropbox, OwnCloud, > etc.) offers much more space. > > Technically abstracting the Storage into a driverbases solution would also > be a good idea. Laravel already has something like that: > http://laravel.com/docs/5.1/filesystem > > — > Reply to this email directly or view it on GitHub > https://github.com/phanan/koel/issues/71#issuecomment-165446652.
Author
Owner

@Lusitaniae commented on GitHub (Dec 20, 2015):

You might consider products like Vultr Local Storage.
100Gb+ VPS for 5$ a month.

Its not as flexible as using S3 but it works on the short term and the cost remain close to each option.

<!-- gh-comment-id:166034664 --> @Lusitaniae commented on GitHub (Dec 20, 2015): You might consider products like Vultr Local Storage. 100Gb+ VPS for 5$ a month. Its not as flexible as using S3 but it works on the short term and the cost remain close to each option.
Author
Owner

@phanan commented on GitHub (Jan 31, 2016):

After further exploration, I can't figure out a way to make this work. Streaming is not a problem, scanning is. In order to read the ID3 tags, you'll need to download each and every song with every scan, which is too expensive IMO.

<!-- gh-comment-id:177512150 --> @phanan commented on GitHub (Jan 31, 2016): After further exploration, I can't figure out a way to make this work. Streaming is not a problem, scanning is. In order to read the ID3 tags, you'll need to download each and every song with every scan, which is too expensive IMO.
Author
Owner

@Lusitaniae commented on GitHub (Jan 31, 2016):

What if the uploads go through the server at first. Temporary storage is not a problem here.

<!-- gh-comment-id:177584540 --> @Lusitaniae commented on GitHub (Jan 31, 2016): What if the uploads go through the server at first. Temporary storage is not a problem here.
Author
Owner

@pascalschwientek commented on GitHub (Feb 1, 2016):

@phanan I thought the same. The only solution I could come up with was to redo the uploading and scanning process. But I couldn't find time for that.

But if someone wants to work an a PR, I will be happy to help.

My idea was to have an uploading folder where you can upload via UI or in batch via FTP, or actually anything you want, and have the script scan it and move it to a different folder and save all the scanning info.

That way the scanning process only scans the newly added songs.

<!-- gh-comment-id:177691839 --> @pascalschwientek commented on GitHub (Feb 1, 2016): @phanan I thought the same. The only solution I could come up with was to redo the uploading and scanning process. But I couldn't find time for that. But if someone wants to work an a PR, I will be happy to help. My idea was to have an uploading folder where you can upload via UI or in batch via FTP, or actually anything you want, and have the script scan it and move it to a different folder and save all the scanning info. That way the scanning process only scans the newly added songs.
Author
Owner

@phanan commented on GitHub (Feb 1, 2016):

What if the uploads go through the server at first.

Koel doesn't handle upload. Also, still a problem with syncing.

<!-- gh-comment-id:177692005 --> @phanan commented on GitHub (Feb 1, 2016): > What if the uploads go through the server at first. Koel doesn't handle upload. Also, still a problem with syncing.
Author
Owner

@phanan commented on GitHub (Jun 13, 2016):

I've come up with a package (and guide) to use Amazon S3 with Koel. Check it out: https://github.com/phanan/koel-aws.

<!-- gh-comment-id:225597563 --> @phanan commented on GitHub (Jun 13, 2016): I've come up with a package (and guide) to use Amazon S3 with Koel. Check it out: https://github.com/phanan/koel-aws.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/koel-koel#52
No description provided.