جایگزین های MinIO برای S3 محلی تک گره
آدرس مقاله: https://rmoff.net/2026/01/14/alternatives-to-minio-for-single-node-local-s3/ آدرس نظرات: https://news.ycombinator.com/item?id=49709381 امتیاز: 247 # نظرات: 97
در اواخر سال 2025، شرکت پشتیبان MinIO تصمیم گرفت آن را رها کند تا به دنبال منافع تجاری دیگر باشد. علاوه بر ناراحتی دسته ای از مردم، گربه را در میان کبوتران بسیاری از دموهای نرم افزاری قرار داد که برای شبیه سازی محلی S3 به MinIO متکی بودند، البته به ساخت خطوط لوله که از آن برای تأیید سازگاری S3 استفاده می کردند، اشاره نکنیم.
در این پست وبلاگ من قصد دارم به برخی از جایگزین های MinIO نگاه کنم.
در حالی که MinIO بسیار بیشتر از یک ابزار جلالی برای شبیهسازی S3 در هنگام ساخت دمو است، تمرکز من در اینجا بر روی سادهترین جایگزینی است. در عمل این به معنای زیر است:
بسیاری از دموها به صورت Docker Compose ارسال می شوند و هیچ کس دوست ندارد تصاویر Docker خود را تهیه کند مگر اینکه واقعا ضروری باشد.
تمام هدف MinIO در این دموها این است که برای نوشتن روی S3 واقعی آماده شوند.
باید برای استفاده آزاد باشد، با ترجیح قوی برای مجوز منبع باز (بر اساس تعریف OSI ) به عنوان مثال. آپاچی 2.0.
استفاده از آن برای استقرار تک گره باید ساده باشد
باید یک جامعه روشن و فعال و/یا پشتیبان تجاری داشته باشد.
هر انرژی میتواند یک سری انحراف از ابزار را کدنویسی کند، یا پروژهای را با شور و شوق انجام دهد – اما MinIO تا کنون امتحان خود را پس داده است و ما نمیخواهیم این تمرین را در شش ماه دیگر تکرار کنیم.
امتیازات جایزه برای تجربه توسعه دهنده عالی (DX)، پیکربندی صاف، اسناد خوب و غیره.
چیزی که من به آن نگاه نمی کنم، به عنوان مثال، استقرار چند گره، فضای ذخیره سازی توزیع شده، هزینه های پشتیبانی تولید، قابلیت های رابط کاربری گرافیکی و غیره است. به این معنی که این پست وبلاگ برای افرادی که از MinIO به عنوان S3 خود مدیریت در تولید استفاده می کردند، نیست. اگر چیزهای مفیدی برای اضافه کردن در این زمینه دارید، در زیر نظر خود را بنویسید:)
نقطه شروع من برای این کار، یک پشته Docker Compose بسیار ساده است: DuckDB برای خواندن و نوشتن داده های Iceberg که در S3 ذخیره شده است، برای شروع توسط MinIO ارائه شده است.
Docker Compose بسیار ساده است:
بدیهی است که DuckDB به همراه کاتالوگ Iceberg REST
mc، که یک MinIO CLI است و برای ایجاد خودکار یک سطل برای داده ها استفاده می شود.
به فرمت Iceberg در S3 می رسد، در اینجا در MinIO:
در هر یک از نمونههایی که من ساختهام، میتوانید test.sh را برای تأیید آن اجرا کنید.
حال بیایید جایگزینهای مختلف MinIO را بررسی کنیم، و اینکه چگونه میتوان آنها را از MinIO خارج کرد.
من پروژه فوق را انتخاب کردم و سعی کردم آن را با کمترین تغییرات پیاده سازی کنم تا از جایگزین MinIO استفاده کنم. من کلاینت MinIO S3، mc را در جای خود گذاشتهام، زیرا اگر میخواهید MinIO را کاملا از بین ببرید (s3cmd، aws CLI، و غیره) جایگزین آن چیز مهمی نیست.
پیاده سازی بسیار آسان است و به نظر یک گزینه سبک وزن خوب است.
این شروع سریع برای کارکرد حداقل عملکرد S3 مفید است. (با این حال، من هنوز کلود را مجبور کردم تا اجرا را انجام دهد...). در کل چیز زیادی برای تغییر در اینجا وجود ندارد. یک تغییر نسبتا ساده از تصاویر Docker، اما auth به فایل پیکربندی خاص خود نیاز دارد (که مانند Garage، من در Docker Compose آن را وارد کردم).
ویرایش: بلافاصله پس از ارسال این وبلاگ، پروژه پاسخ داد که آنها این نیاز اضافی را حذف خواهند کرد و استفاده از آن را آسان تر می کند! چقدر باحاله :)
این در https://t.co/RQv387bbKb تکمیل شده و در نسخه هفتگی گنجانده خواهد شد.
SeaweedFS با رابط کاربری اصلی خود ارائه می شود که مفید است:
وبسایت SeaweedFS بهطور شگفتانگیزی پراکنده است و در یک نگاه به شما بخشیده میشود که این یک پروژه OSS است، زیرا گزینه «قیمتگذاری» وجود دارد و عنوان صفحه اول «SeaweedFS Enterprise» است (و هیچ پیوند GitHub که نتوانستم پیدا کنم!). اما این یک پروژه OSS است، و یک پروژه قدیمی است: SeaweedFS از زمان انتشار 0.91 در سال 2018 با پشتیبانی از S3 وجود داشته است. همچنین می توانید در مورد SeaweedFS از این اسلایدها، از جمله نمودار مقایسه با MinIO، اطلاعات بیشتری کسب کنید.
✅ تصویر Docker (همچنین موارد قدیمی در Docker Hub با 5M+ کشش)
CloudServer که قبلا به عنوان S3 Server شناخته می شد، بخشی از مجموعه ابزاری به نام Zenko است که توسط Scality منتشر شده است. به راحتی جایگزین MinIO میشود، اما در ابتدا تفکیک مجموعه نامها (Cloudserver/zenko/scality) و نرمافزار واقعی که برای اجرا نیاز داشتم، برای من کمی مشکل بود. همچنین یک احساس کمی عجیب وجود دارد که اسناد به یک تصویر Docker منسوخ شده پیوند میخورند.
مجبور شدم از دوستی بگیرم که در این مورد به من کمک کند. علاوه بر کانتینر گاراژ، برای انجام تنظیمات اولیه به یک فایل پیکربندی TOML که در Docker Compose قرار دادهام نیاز داشتم تا همه چیز مختصر باشد.
آیا میتوانستم بنشینم و RTFM خودم آن را بفهمم؟ بله. آیا کارهای بهتری برای انجام دادن وقتم دارم؟ همچنین، بله.
بنابراین، گاراژ کار میکند، اما خداییش… این فقط یک جایگزین از نظر تغییرات کد نیست. برای شروع به لوله کشی متفاوتی نیاز دارد، و در این مورد نیز ساده نیست. یک مثال ساده: شناسه کلید مشخصشده، شناسه کلید Garage معتبر نیست (با GK شروع میشود و با 12 بایت کدگذاری شده هگزا دنبال میشود). برای بهداشت تولید بسیار عالی است... بیش از حد برای دموهای محلی، و در واقع تا حدودی مانع TBH است.
اوزون در سال 2020 از Apache Hadoop خارج شد (یادتان میآید؟) و در ابتدا به عنوان بخشی از پروژه HDFS در سال 2015 ایجاد شد.
این به عنوان جایگزینی برای MinIO عمل می کند، اما جایگزین سبک وزنی نیست. نه من و نه کلود نتوانستیم بفهمیم که چگونه آن را با کمتر از چهار گره مستقر کنیم. حال و هوای سنگین Hadoop می دهد و من عجله ای برای استفاده از آن برای مورد استفاده خود در اینجا ندارم.
من یک نگاهی به دستورالعمل های نصب انداختم و درست از این یکی حذف نشدم!
ازن (در بالا) به اندازه کافی سنگین است. من مطمئن هستم که هر دو در کاری که انجام می دهند عالی هستند، اما ظرف سبک وزنی نیستند که بتوان در پشته Docker Compose من برای دموهای محلی جای داد.
وب سایت شیک اما جزئیات زیادی در مورد شرکت نیست
مشارکت کننده منفرد (کریس لو)، گزینه Enterprise در دسترس است
با توجه به اینکه تعداد کمی از پروژههای پاییندستی که از تصویر در خط لوله CI/CD که اغلب اجرا میشوند، میتوانند به راحتی این رقم را مخدوش کنند، سیگنالهای Docker pulls یک سیگنال مفید است اما مطلق نیست.
من در نوشتن این وبلاگ به دلیل اینکه می خواستم نسخه نمایشی را که در حال حاضر از MinIO در آن استفاده می شد، به روز کنم. بنابراین، پس از آزمایش آنها، از کدام یک از گزینه ها استفاده خواهم کرد؟
RustFS - شاید، اما پروژه بسیار جدید و انتشار آلفا.
CloudServer - بله، شاید؟ صادقانه بگویم، به دلیل اینکه بخشی از یک مجموعه است و نگران کننده است که برای استفاده از آن نیاز به درک سایر قسمت های آن داشته باشم - احتمالا بی اساس است، به تعویق افتاد.
گاراژ - نه، پیکربندی برای آنچه من نیاز دارم بسیار پیچیده است.
منظورم این است که بر روی آن گزینه هایی که در مقابل آنها جواب بله را ثبت نکرده ام، سایه نیاندازم. آنها احتمالا پروژه های عالی هستند، اما فقط روی مورد استفاده اصلی من متمرکز نیستند (پیکربندی S3 محلی تک گره ساده و آسان).
هنگام انتخاب جایگزینی برای MinIO باید به چند نکته جدایی توجه کرد:
حکومت داری . در حالی که همه پروژه ها OSS هستند، تنها اوزون متعلق به یک بنیاد (ASF) است. همه بقیه، در تئوری، می توانند مجوز خود را در یک کلاه تغییر دهند (درست مانند MinIO).
سلامت جامعه. "عامل اتوبوس" چیست؟ چند مورد از پروژه های بالا سابقه بسیار طولانی و سالمی دارند - اما از یک مشارکت کننده. اگر قرار بود این پروژه را رها کنند، آیا کسی در جامعه دست از کار میکشد و به طور فعال به توسعه آن ادامه میدهد؟
30/01/2026: جاستین کورمک در مورد برخی از جزئیات پیاده سازی و عملکرد RustFS و Garage نوشته است.
02/03/2026: Ruohang Feng MinIO را به pgsty/minio تقسیم کرده است و قول داده است که توزیع پایدار و وصلهشده با CVE را حفظ کند.
متن اصلی (انگلیسی)
Alternatives to MinIO for single-node local S3
Article URL: https://rmoff.net/2026/01/14/alternatives-to-minio-for-single-node-local-s3/ Comments URL: https://news.ycombinator.com/item?id=49709381 Points: 247 # Comments: 97