this post was submitted on 14 Sep 2024
38 points (97.5% liked)

Selfhosted

39980 readers
603 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 1 year ago
MODERATORS
 

Has anyone got some experience/advice for choosing between the options? It seems like they are:

My usecase is just to have a local single instance for testing apps against. I prefer to spin stuff up in Docker on the homelab.

top 18 comments
sorted by: hot top controversial new old
[–] [email protected] 18 points 1 month ago (2 children)

Garage is trivial to get up and running and it’s more lightweight than minio nowadays.

[–] [email protected] 6 points 1 month ago (1 children)

That's what annoyed me about minio. Started super crazy simple to set up, but I missed two updates and came back to AWS levels of mandatory configuration. Ffs I chose you because you were simple, not because I needed to replace s3

[–] [email protected] 2 points 1 month ago

I went through this too, except I got pissed off and found a fips compliant image running the last version prior to their disk format changes. Gosh that royally pissed me off.

[–] [email protected] 5 points 1 month ago

Garage definitely seems better suited for selfhosters and small setups, Minio is just so large and complex with specific requirements now.

[–] [email protected] 7 points 1 month ago (3 children)

I set garage via docker and it was not impossibly hard.

Main problem is that there isn't an admin panel and you can't login to the docker container via docker exec, so you have to write some python (or other language of your choice) to send requests to the API port to:

  1. Set the layout of your server
  2. Create an user
  3. Create a bucket
  4. Assign that bucket to your user
[–] [email protected] 3 points 1 month ago (2 children)

You can use docker exec with garage docker image.

I'm on mobile but I think you just need something like: docker exec containerid ./garage stats

[–] [email protected] 3 points 1 month ago

This is correct, I already installed the minio cli, but when I came back and read this, I tried it out and yes, once garage is running in the container, you can

alias garage="docker exec -ti <container name> /garage"

so you can do the cli things like garage bucket info test-bucket or whatever. The --help for the garage command is pretty great, which is good since they don't write it up much in the docs.

[–] [email protected] 2 points 1 month ago

Ah maybe I was missing the ./ , it said garage not found on path (on mobile, can't try)

[–] [email protected] 3 points 1 month ago

Postman is great for sending api queries.

[–] [email protected] 2 points 1 month ago

Thanks. I ended up going with Garage (in Docker), and installed the minio client cli for these tasks.

[–] [email protected] 4 points 1 month ago (1 children)

Which apps are you testing?

I set up minio s3 for testing myself, but found that most of my docker services doesn't really support it. So I went back to good old folders

[–] [email protected] 2 points 1 month ago

One I'm writing. I use the host file system (as I have a strong preference for simple) for it's storage, but I'm interested in adding Litestream for replicating the database onto AWS.

[–] [email protected] 4 points 1 month ago

https://www.localstack.cloud/ emulates a bunch of the aws services, perfect for local testing.

[–] [email protected] 3 points 1 month ago

If you need S3-compliant storage for testing and development, you can use an S3 mock server. I've tried the following for use in web development and CI environments, they are lightweight and configurable:

There is also Localstack. I found this one to be a bit more complex than the ones above and ended up not sticking with it.

[–] [email protected] 3 points 1 month ago (1 children)

I've used minio briefly, and I've never used any other self hosted object storage. In the context of spinning it up with docker, it's pretty easy. The difficult part in my project was that I wanted some buckets predefined. The docker image doesn't provide this functionality directly, so I had to spin up an adjacent container with the minio cli that would create the buckets automatically every time I spun up minio.

But for your use case you would manage bucket creation manually, from the UI. It seems straight forward enough, and I don't have complaints. I think it would work for your use case, but I can't say its any worse or better than alternatives.

[–] [email protected] 2 points 1 month ago

Thanks, I ended up going with Garage, but it has the same issue. I assumed I could just specify some buckets with their keys in the docker-compose or garage.toml, but no - they had to be done through the api or command line.

[–] [email protected] 2 points 1 month ago

I run MiniO in Docker. Love it. I've never used Garage or Seaweed.

[–] [email protected] 2 points 1 month ago

Garage is the simplest of the three imo.

I've only used it in a cluster, but it should be even simpler for one instance