هل من الممكن تكوين عنوان Url إلى واجهة برمجة تطبيقات خادم تخزين كائنات S3 (متوافقة) والتي يتم استخدامها كمخزن blobstore بواسطة flynn؟
الوثائق ليست محددة حول هذا:
flynn -a blobstore env set BACKEND_S3MAIN="backend=s3 region=us-east-1 \
bucket=flynnblobstore access_key_id=$AWS_ACCESS_KEY_ID \
secret_access_key=$AWS_SECRET_ACCESS_KEY"
flynn -a blobstore env set DEFAULT_BACKEND=s3main
الخلفية هي أن S3 API أصبحت أكثر أو أقل واجهة برمجة تطبيقات REST القياسية لتخزين الكائنات وتدعمها الغالبية العظمى من حلول تخزين الكائنات. لذلك سيسمح هذا باستخدام بدائل S3 التي تدعم S3 API.
على سبيل المثال ، يمكن استخدام Minio في وضع نظام الملفات المحلي الخاص به كمحول بين NAS و Object Storage API ، وهو مفيد جدًا لعمليات نشر flynn في مكان العمل.
ليس حاليًا ، على الرغم من إمكانية إضافته. أعتقد أن حزمة العميل https://github.com/minio/minio-go مناسبة تمامًا للواجهة الخلفية العامة المتوافقة مع S3.
لقد استخدمت للتو عميل minio (اعتقدت أنه برنامج Java) في مشروع خاص بي لنفس السبب: وزنه الخفيف جدًا ويعمل كعميل لجميع أنواع متاجر الكائنات المتوافقة مع S3.
ومع ذلك ، يعمل خادم minio أيضًا مع aws s3 sdk / client القياسي ، لذلك هذا ليس مطلوبًا لهذه الميزة.
هل هناك أي عمل تم إنجازه على هذا؟ أو هل يمكنك إعطاء بعض التلميحات حول مكان بدء الحفر لفتح العلاقات العامة التي تسمح ، على سبيل المثال ، بتعيين عنوان URL مخصص لـ S3 من خلال متغيرات ENV؟ أعتقد حقًا أن كل ما يتطلبه الأمر لإنجاز هذا العمل على خادم minio خاص ، حيث أن الخادم متوافق تمامًا مع S3.
walski يجب إضافة الواجهة الخلفية "minio" أو "s3_compat" الإضافية إلى blobstore باستخدام حزمة العميل minio المرتبطة أعلاه. أعتقد أننا يجب أن نستمر في استخدام عميل S3 الرسمي للتحدث إلى AWS S3. يجب أن يكون تخطيط رمز blobstore واضحًا بشكل معقول ، يُرجى إعلامي إذا كان لديك أي أسئلة.
Minio متوافق مع aws ، إذا كان هناك خيار لتغيير نقطة النهاية ، فلا داعي لتطبيق أي عميل جديد آخر. في مكان ما في هذا func https://github.com/flynn/flynn/blob/master/blobstore/backend/s3.go#L24
التعليق الأكثر فائدة
Minio متوافق مع aws ، إذا كان هناك خيار لتغيير نقطة النهاية ، فلا داعي لتطبيق أي عميل جديد آخر. في مكان ما في هذا func https://github.com/flynn/flynn/blob/master/blobstore/backend/s3.go#L24