Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use minio as "backend" #173

Open
yarikoptic opened this issue Mar 3, 2025 · 1 comment
Open

Use minio as "backend" #173

yarikoptic opened this issue Mar 3, 2025 · 1 comment

Comments

@yarikoptic
Copy link
Member

Was suggested by @satra in

we could use s3invsync to sync to a local minio server that uses the filesystem as a backend, which would allow for a more one to one mapping.

which might provide remedy to

@satra
Copy link
Member

satra commented Mar 4, 2025

i did some follow up tests with minio locally. a few notes:

  • it seems to keep the latest version in a file tree while shoving versions/diffs into a .minio.sys folder. (so the output looks just like a file tree, which means it can't deal with the issue in Support Scenario where S3 Path is both a File and a Directory #170)
  • however, if you see below, it does somehow keep the file in store, while not displaying anything about it
❯ aws --endpoint-url http://localhost:9000 --profile minio s3 ls s3://test/
❯ aws --endpoint-url http://localhost:9000 --profile minio s3 cp test.file s3://test/0
upload: ./test.file to s3://test/0                              
❯ aws --endpoint-url http://localhost:9000 --profile minio s3 cp test.file2 s3://test/0/0
upload: ./test.file2 to s3://test/0/0                           

❯ aws --endpoint-url http://localhost:9000 --profile minio s3 ls --summarize s3://test/0
2025-03-04 00:01:25      16032 0

Total Objects: 1
   Total Size: 16032
❯ aws --endpoint-url http://localhost:9000 --profile minio s3 ls --summarize s3://test/0/0

Total Objects: 0
   Total Size: 0
❯ aws --endpoint-url http://localhost:9000 --profile minio s3 ls --recursive s3://test
2025-03-04 00:01:25      16032 0

❯ aws --endpoint-url http://localhost:9000 --profile minio s3 cp s3://test/0 file.s3
download: s3://test/0 to ./file.s3                              
❯ aws --endpoint-url http://localhost:9000 --profile minio s3 cp s3://test/0/0 file2.s3
download: s3://test/0/0 to ./file2.s3                           
❯ diff test.file file.s3
❯ diff test.file2 file2.s3

also if i go to the webui and delete the outer file, the inner file pops up. this pattern does not hold if i delete using the CLI. it appears the CLI puts delete markers on all objects that have the prefix test/0

❯ aws --endpoint-url http://localhost:9000 --profile minio s3 ls --recursive s3://test
2025-03-04 00:09:36       3084 0/0

❯ aws --endpoint-url http://localhost:9000 --profile minio s3 cp test.file s3://test/0
upload: ./test.file to s3://test/0                                
❯ aws --endpoint-url http://localhost:9000 --profile minio s3 ls --recursive s3://test
2025-03-04 00:15:52      16032 0
❯ aws --endpoint-url http://localhost:9000 --profile minio s3 rm s3://test/0
delete: s3://test/0
❯ aws --endpoint-url http://localhost:9000 --profile minio s3 ls --recursive s3://test

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants