Skip to main content

A Tutor plugin for object storage in MinIO

Project description

This is a plugin for Tutor that provides S3-like object storage for Open edX platforms. It’s S3, but without the dependency on AWS. This is achieved thanks to MinIO, an open source project that provides object storage with an API compatible with S3.

In particular, this plugin is essential for Kubernetes deployment.

Installation

The plugin is currently bundled with the binary releases of Tutor. If you have installed Tutor from source, you will have to install this plugin from source, too:

tutor plugins install minio

Then, to enable this plugin, run:

tutor plugins enable minio

Configuration

  • OPENEDX_AWS_ACCESS_KEY (default: "openedx")

  • OPENEDX_AWS_SECRET_ACCESS_KEY (default: "{{ 24|random_string }}")

  • MINIO_BUCKET_NAME (default: "openedx")

  • MINIO_FILE_UPLOAD_BUCKET_NAME (default: "openedxuploads")

  • MINIO_HOST (default: "files.{{ LMS_HOST }}")

  • MINIO_CONSOLE_HOST (default: "minio.{{ LMS_HOST }}")

  • MINIO_DOCKER_IMAGE (default: "docker.io/minio/minio:RELEASE.2022-05-08T23-50-31Z")

  • MINIO_MC_DOCKER_IMAGE (default: "docker.io/minio/mc:RELEASE.2022-05-09T04-08-26Z")

  • MINIO_GRADES_BUCKET_NAME (default: "openedxgrades")

These values can be modified with tutor config save --set PARAM_NAME=VALUE commands.

  • MINIO_GATEWAY (default: null)

This feature allows your to run the MinIO server as a gateway to another object storage solution, such as S3 or Azure. That way, static assets can be stored on these object storage backends without extensive changes to the Open edX runtime environment.

Note to Azure users: you will have to manually grant public access rights to the MINIO_BUCKET_NAME (“openedx”) bucket.

DNS records

It is assumed that the MINIO_HOST DNS record points to your server. When running MinIO on your laptop, the MinIO Web UI will be available at http://minio.local.edly.io. In development mode, the MinIO interface will be available at http://minio.local.edly.io:9001.

Web UI

The MinIO web UI can be accessed at http://<MINIO_HOST>. The credentials for accessing the UI can be obtained with:

tutor config printvalue OPENEDX_AWS_ACCESS_KEY
tutor config printvalue OPENEDX_AWS_SECRET_ACCESS_KEY

Troubleshooting

This Tutor plugin is maintained by Muhammad Faraz Maqsood from Edly. Community support is available from the official Open edX forum. Do you need help with this plugin? See the troubleshooting section from the Tutor documentation.

License

This work is licensed under the terms of the GNU Affero General Public License (AGPL).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tutor_minio-18.0.1.tar.gz (19.5 kB view details)

Uploaded Source

File details

Details for the file tutor_minio-18.0.1.tar.gz.

File metadata

  • Download URL: tutor_minio-18.0.1.tar.gz
  • Upload date:
  • Size: 19.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.8.18

File hashes

Hashes for tutor_minio-18.0.1.tar.gz
Algorithm Hash digest
SHA256 2916cd703613b82979361e363a88f6efccfd0a8d37555e7cc62c47207f62baae
MD5 cad136135558259a881a5ed9f3b2d99e
BLAKE2b-256 fbc9344e23f8af690c763e2b11ba6b2fd0f13e691c0e38613a725e9fa56ca42a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page