4 ms·
Any good alternatives for local development?
by allovertheworld 8mo ago
Any good alternatives for local development?
- courtcircuits 8mo agoGo for Garage, you can check the docker-compose and the "setup" crate of this project https://github.com/beep-industries/content https://github.com/beep-industries/content. There are a few tricks to make it work locally so it generates an API key and bucket declaratively but in the end it does the job
- Scarjit 8mo agoRustFS is dead simple to setup.
- Havoc 8mo agoIt has unfortunately also had a fair bit of drama already for a pretty young project
- gardnr 8mo agogaraged: image: dxflrs/garage:v2.2.0 ports: - "3900:3900" - "3901:3901" - "3902:3902" - "3903:3903" volumes: - /opt/garage/garage.toml:/etc/garage.toml:ro - /opt/garage/meta:/var/lib/garage/meta - /opt/garage/data:/var/lib/garage/data
- pikachu0625 8mo agoOS's file system? Implementation cost has been significantly decreased these day. We can just prompt 'use S3 instead of local file system' if we need to use a S3 like service.
- espenb 8mo agoI didn't find an alternative that I liked as much as MinIO and I, unfortunately, ended up creating a my own. It includes just the most basic features and cannot be compared to the larger projects, but is simple and it is efficient. https://github.com/espebra/stupid-simple-s3 https://github.com/espebra/stupid-simple-s3
- luke5441 8mo agoThe listing is perhaps in line with the first two "s". It seems it always iterates through all files, reads the "meta.json", then filters?
- espenb 8mo agoYes, indeed. The list operation is expensive. The S3 spec says that the list output needs to be sorted. 1. All filenames are read. 2. All filenames are sorted. 3. Pagination applied. It doesn't scale obviously, but works ok-ish for a smaller data set. It is difficult to do this efficiently without introducing complexity. My applications don't use listing, so I prioritised simplicity over performance for the list operation.
- luke5441 8mo agoMaybe mention it somewhere as a limitation, so it is not used for use-cases where listing is important and there are many objects? Listing was IMO a problem with minio as well, but maybe it is not that important because it seems to have succeeded anyway.
- slooonz 8mo agoversitygw is the simplest "just expose some S3-compatible API on top of some local folder"
- daurnimator 8mo agoseaweedfs: `weed server -s3` is enough to spin up a server locally
- ahoka 8mo agoS3 Ninja if you really just need something local to try your code with.
- chrislusf 8mo agoI work on SeaweedFS. Just download the single binary, for most platforms, and run "weed mini -dir=your_data_directory", with all the configuration optimized.