minio | High Performance Object Storage for AI | Cloud Storage library

 by   minio Go Version: RELEASE.2023-06-09T07-32-12Z License: AGPL-3.0

kandi X-RAY | minio Summary

kandi X-RAY | minio Summary

minio is a Go library typically used in Storage, Cloud Storage, Amazon S3 applications. minio has no bugs, it has a Strong Copyleft License and it has medium support. However minio has 6 vulnerabilities. You can download it from GitHub.

MinIO is a High Performance Object Storage released under GNU Affero General Public License v3.0. It is API compatible with Amazon S3 cloud storage service. Use MinIO to build high performance infrastructure for machine learning, analytics and application data workloads. This README provides quickstart instructions on running MinIO on bare metal hardware, including container-based installations. For Kubernetes environments, use the MinIO Kubernetes Operator.
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              minio has a medium active ecosystem.
              It has 39447 star(s) with 4743 fork(s). There are 617 watchers for this library.
              There were 6 major release(s) in the last 12 months.
              There are 22 open issues and 6577 have been closed. On average issues are closed in 24 days. There are 12 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of minio is RELEASE.2023-06-09T07-32-12Z

            kandi-Quality Quality

              minio has 0 bugs and 0 code smells.

            kandi-Security Security

              OutlinedDot
              minio has 6 vulnerability issues reported (0 critical, 4 high, 2 medium, 0 low).
              minio code analysis shows 0 unresolved vulnerabilities.
              There are 0 security hotspots that need review.

            kandi-License License

              minio is licensed under the AGPL-3.0 License. This license is Strong Copyleft.
              Strong Copyleft licenses enforce sharing, and you can use them when creating open source projects.

            kandi-Reuse Reuse

              minio releases are available to install and integrate.
              Installation instructions, examples and code snippets are available.
              It has 190811 lines of code, 7200 functions and 741 files.
              It has high code complexity. Code complexity directly impacts maintainability of the code.

            Top functions reviewed by kandi - BETA

            kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
            Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of minio
            Get all kandi verified functions for this library.

            minio Key Features

            No Key Features are available at this moment for minio.

            minio Examples and Code Snippets

            No Code Snippets are available at this moment for minio.

            Community Discussions

            QUESTION

            How to get the result from IObservable subscription without a blocking call?
            Asked 2022-Apr-12 at 13:23

            I'm trying to get filenames within a bucket of my MinIO server using the ListObjectsAsync method.

            Here is the relevant code:

            ...

            ANSWER

            Answered 2022-Apr-12 at 13:23

            Instead of doing the subscribe, return files.ToTask().

            EDIT

            As you mention in the comments, first use .ToList() in order to gather all the next events into one event. If you are looking for a specific file, like another answer implies, then use .Filter.

            Also I think your return type should be a Task with an array of strings rather than a single string... (Unless you only want one file and have filtered out all the others.)

            Source https://stackoverflow.com/questions/71843198

            QUESTION

            Missing fields in request to upload files to minio using the generated presigned url
            Asked 2022-Apr-11 at 11:07

            I'm using Minio Server to handle files in my nodejs API, basically to emulate s3 locally. I generated Presigned Url to upload images directly.

            Presign Url Generation works fine but when I upload my file from Postman the file it gives me this error:

            ...

            ANSWER

            Answered 2022-Apr-11 at 11:07

            I was trying and changing ports, and the put command seems to work when I use only local host for url generation

            so, in this above:

            Source https://stackoverflow.com/questions/71809524

            QUESTION

            Connect two containers through docker network
            Asked 2022-Mar-22 at 15:28

            My objective is connect two different containers to get data, in other words:

            • I have an instance of OpenCTI working in my docker , and I can access it through my browser (http://localhost:8080).
            • Consequently, I am developing another one to get data from OpenCTI.

            To connect both, I already created a docker network called "minharede".

            However is not working.

            The configuration of my containers is:

            Docker-compose file of OpenCTI:

            ...

            ANSWER

            Answered 2022-Mar-21 at 19:04

            QUESTION

            Kubernetes storageClass for Postgresql database
            Asked 2022-Mar-21 at 15:35

            What is the preferred Kubernetes storageClass for a PersistentVolume used by a Postgresql database? Which factors should go into consideration choosing the storageClass when I have the choice between S3 (Minio), NFS and HostPath?

            ...

            ANSWER

            Answered 2022-Mar-13 at 20:24

            You should take care of getting dynamic block storage.

            Host path is kind of what you want, but it's not dynamic, meaning it can't move around nodes. So if your node goes down, you have a problem.

            If it's managed by a cloud vendor, there should be a premade storage class that covers this, i.e. azure disk.

            NFS and S3 don't make sense for database data. You are not dealing with files/objects in that sense.

            Source https://stackoverflow.com/questions/71459548

            QUESTION

            Does Hub support integrations for MinIO, AWS, and GCP? If so, how does it work?
            Asked 2022-Mar-19 at 16:28

            I was taking a look at Hub—the dataset format for AI—and noticed that hub integrates with GCP and AWS. I was wondering if it also supported integrations with MinIO.

            I know that Hub allows you to directly stream datasets from cloud storage to ML workflows but I’m not sure which ML workflows it integrates with.

            I would like to use MinIO over S3 since my team has a self-hosted MinIO instance (aka it's free).

            ...

            ANSWER

            Answered 2022-Mar-19 at 16:28

            Hub allows you to load data from anywhere. Hub works locally, on Google Cloud, MinIO, AWS as well as Activeloop storage (no servers needed!). So, it allows you to load data and directly stream datasets from cloud storage to ML workflows.

            You can find more information about storage authentication in the Hub docs.

            Then, Hub allows you to stream data to PyTorch or TensorFlow with simple dataset integrations as if the data were local since you can connect Hub datasets to ML frameworks.

            Source https://stackoverflow.com/questions/71539946

            QUESTION

            Minio deployment using kubernetes doesn't work as expected
            Asked 2022-Mar-14 at 13:32

            I'm experimenting with kubernetes and a minio deployment. I have a k3s 4 node cluster, each one with 4 50GB disk. Following the instructions here I have done this:

            1. First I installed krew in order to install the minio and the directpv operators.

            2. I installed those two without a problem.

            3. I formatted every Available hdd in the node using kubectl directpv drives format --drives /dev/vd{b...e} --nodes k3s{1...4}

            4. I then proceed to make the deployment, first I create the namespace with kubectl create namespace minio-tenant-1, and then I actually create the tenant with:

              kubectl minio tenant create minio-tenant-1 --servers 4 --volumes 8 --capacity 10Gi --storage-class direct-csi-min-io --namespace minio-tenant-1

            5. The only thing I need to do then is expose the port to access, which I do with: kubectl port-forward service/minio 443:443 (I'm guessing it should be a better way to achieve this, as the last command isn't apparently permanent, maybe using a LoadBalancer or NodePort type services in the kubernetes cluster).

            So far so good, but I'm facing some problems:

            • When I try to create an alias to the server using mc the prompt answer me back with:

            mc: Unable to initialize new alias from the provided credentials. Get "https://127.0.0.1/probe-bucket-sign-9aplsepjlq65/?location=": x509: cannot validate certificate for 127.0.0.1 because it doesn't contain any IP SANs

            I can surpass this with simply adding the --insecure option, but I don't know why it throws me this error, I guess is something how k3s manage the TLS auto-signed certificates.

            • Once created the alias (I named it test) of the server with the --insecure option I try to create a bucket, but the server always answer me back with:

              mc mb test/hello

              mc: Unable to make bucket \test/hello. The specified bucket does not exist.

            So... I can't really use it... Any help will be appreciated, I need to know what I'm doing wrong.

            ...

            ANSWER

            Answered 2022-Mar-14 at 13:32

            Guided by information at the Minio documentation. You have to generate a public certificate. First of all generate a private key use command:

            Source https://stackoverflow.com/questions/71442813

            QUESTION

            Can Minio decide to delete files for some reason?
            Asked 2022-Mar-10 at 22:04

            I have a Minio Replicated system with 4 nodes. It worked well for about 1 year. Then, recently, after some curruption and uploading errors, it has been decided to upgrade the Minio version several times during the last two weeks to check if the corruption problem derived from some already fixed issues. Then suddenly files started to disappear from Minio, more than 1TB of data has been lost, so it has been decided to downgrade the minio cluster to a single minio instance temporary.

            Therefore, i would like to understand the logic of how distributed minio communicates to the others nodes to delete objects, and if there is a chance that minio could, by itself, delete objects because they are currupted or inconsistent, due to disk damage or a power blackout.

            ...

            ANSWER

            Answered 2022-Mar-10 at 22:04

            Thanks for the question

            I have been following this question very carefully on the minio forum on Github and I believe it is time to summarize it a bit.

            Source https://stackoverflow.com/questions/71211417

            QUESTION

            How do you add user-defined S3 metadata in when using django-storages
            Asked 2022-Mar-06 at 16:20

            I am using django 3.1.0 with django-storages 1.12.3. I am using an S3 backend to store media files (Minio). I am trying to post the file to S3, and include additional user metadata to the S3 object. This additional metadata comes from the POST request used to upload the file to django. With S3, custom metadata can be added by including additional key-value pairs to the HTTP header for the POST request sent to the S3 server when the file is uploaded, where the custom keys would be prefixed with 'X-Amz-Meta-'.

            I am using a FileField in a django model, and files are uploaded using a REST API endpoint. As far as I understand it, when django receives the file, it stores it temporarily, and then, when saving the FielField on the model instance, the file is posted to the S3 server. I want to modify the flow, so that the custom metadata is taken from the request and included in the post to the S3 server.

            Any idea how I can take data from the initial request, and pass it to the header of the POST request being sent to S3?

            Update

            After trying Option 1 from Helge Schneider's answer, I did a little modification and got it to work.

            I am using django rest framework, so I modified the serializer .save() method.

            ...

            ANSWER

            Answered 2022-Mar-06 at 16:20

            There are two possible options:

            1. Update the parameters of the storage class before calling the save method

            One option would be to update the storage class from the filefield of the model before calling the save method and update the object_parameters attribute.

            views.py

            Source https://stackoverflow.com/questions/71339929

            QUESTION

            Minio install behind Traefik
            Asked 2022-Feb-26 at 17:31

            I had the previous version (from last yr) of minio running well behind traefik and on portainer with no issues. I attempted an upgrade 4 days ago to the new version and it's been downhill since then. I get the login page but it won't accept credentials; Error: {"code":500,"detailedMessage":"Post \"https://storage.example.com/\": dial tcp :443: i/o timeout","message":"invalid Login"} I suspect it has something to do with the TLS certificate.

            Below is my compose file, I've generated the certs as required; any assistance is is welcomed:

            ...

            ANSWER

            Answered 2021-Oct-08 at 06:11

            I was getting the same Invalid Login error: Post "http://minio.localhost/": dial tcp: lookup minio.localhost on 127.0.0.11:53: no such host.

            The following docker-compose.yml works. The solution is NOT to use MINIO_DOMAIN or MINIO_SERVER_URL. See # comments at environment: variables.

            Source https://stackoverflow.com/questions/69385638

            QUESTION

            cannot visit minio server dashboard from ubuntu
            Asked 2022-Feb-25 at 19:01

            i am working on nginx and minio on the ubuntu.

            the minio server is started from

            'nohup /usr/local/bin/minio server /data/tenant1 --address :9001 > /opt/logs/minio.log 2>&1 &#',

            and it is working.

            then I started the nginx and configure the nginx server with the following configuration.

            ...

            ANSWER

            Answered 2022-Feb-25 at 19:01

            The MinIO console dashboard listens on a separate port - you need to specify this with the option --console-address :10000 - if you do not specify this, a random port is chosen for you and it will be displayed in MinIO's logs in your /opt/log/minio.log file. The 9001 port in your setup is for the S3 storage API only.

            Source https://stackoverflow.com/questions/70471738

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install minio

            MinIO is a High Performance Object Storage released under GNU Affero General Public License v3.0. It is API compatible with Amazon S3 cloud storage service. Use MinIO to build high performance infrastructure for machine learning, analytics and application data workloads. This README provides quickstart instructions on running MinIO on bare metal hardware, including container-based installations. For Kubernetes environments, use the MinIO Kubernetes Operator.
            Use the following commands to run a standalone MinIO server as a container. Standalone MinIO servers are best suited for early development and evaluation. Certain features such as versioning, object locking, and bucket replication require distributed deploying MinIO with Erasure Coding. For extended development and production, deploy MinIO with Erasure Coding enabled - specifically, with a minimum of 4 drives per MinIO server. See MinIO Erasure Code Quickstart Guide for more complete documentation.
            Use the following command to download and run a standalone MinIO server on macOS. Replace /data with the path to the drive or directory in which you want MinIO to store data. The MinIO deployment starts using default root credentials minioadmin:minioadmin. You can test the deployment using the MinIO Console, an embedded web-based object browser built into MinIO Server. Point a web browser running on the host machine to http://127.0.0.1:9000 and log in with the root credentials. You can use the Browser to create buckets, upload objects, and browse the contents of the MinIO server. You can also connect using any S3-compatible tool, such as the MinIO Client mc commandline tool. See Test using MinIO Client mc for more information on using the mc commandline tool. For application developers, see https://docs.min.io/docs/ and click MinIO SDKs in the navigation to view MinIO SDKs for supported languages.
            Use the following commands to compile and run a standalone MinIO server from source. Source installation is only intended for developers and advanced users. If you do not have a working Golang environment, please follow How to install Golang. Minimum version required is go1.17. The MinIO deployment starts using default root credentials minioadmin:minioadmin. You can test the deployment using the MinIO Console, an embedded web-based object browser built into MinIO Server. Point a web browser running on the host machine to http://127.0.0.1:9000 and log in with the root credentials. You can use the Browser to create buckets, upload objects, and browse the contents of the MinIO server. You can also connect using any S3-compatible tool, such as the MinIO Client mc commandline tool. See Test using MinIO Client mc for more information on using the mc commandline tool. For application developers, see https://docs.min.io/docs/ and click MinIO SDKs in the navigation to view MinIO SDKs for supported languages. NOTE: Standalone MinIO servers are best suited for early development and evaluation. Certain features such as versioning, object locking, and bucket replication require distributed deploying MinIO with Erasure Coding. For extended development and production, deploy MinIO with Erasure Coding enabled - specifically, with a minimum of 4 drives per MinIO server. See MinIO Erasure Code Quickstart Guide for more complete documentation. MinIO strongly recommends against using compiled-from-source MinIO servers for production environments.
            We do not recommend upgrading one MinIO server at a time, the product is designed to support parallel upgrades please follow our recommended guidelines.
            Test all upgrades in a lower environment (DEV, QA, UAT) before applying to production. Performing blind upgrades in production environments carries significant risk.
            Read the release notes for the targeted MinIO release before performing any installation, there is no forced requirement to upgrade to latest releases every week. If it has a bug fix you are looking for then yes, else avoid actively upgrading a running production system.
            Make sure MinIO process has write access to /opt/bin if you plan to use mc admin update. This is needed for MinIO to download the latest binary from https://dl.min.io and save it locally for upgrades.
            mc admin update is not supported in kubernetes/container environments, container environments provide their own mechanisms for container updates.
            We do not recommend upgrading one MinIO server at a time, the product is designed to support parallel upgrades please follow our recommended guidelines.

            Support

            Please follow MinIO Contributor's Guide.
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries

            Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link

            Explore Related Topics

            Consider Popular Cloud Storage Libraries

            minio

            by minio

            rclone

            by rclone

            flysystem

            by thephpleague

            boto

            by boto

            Dropbox-Uploader

            by andreafabrizi

            Try Top Libraries by minio

            mc

            by minioGo

            minio-go

            by minioGo

            simdjson-go

            by minioGo

            c2goasm

            by minioGo

            operator

            by minioTypeScript