-
Notifications
You must be signed in to change notification settings - Fork 79
Changes to add support for the minio #831
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
base: main
Are you sure you want to change the base?
Changes to add support for the minio #831
Conversation
| - "/dev:/dev" | ||
|
|
||
| mraas_minio: | ||
| image: minio/minio:RELEASE.2020-12-12T08-39-07Z |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is very old image, can you try with the latest minio version?
I believe this would be the case for other vision sample apps too
| @@ -0,0 +1,15 @@ | |||
| import boto3 | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you please add the Apache license header like in other files?
| import boto3 | ||
| url = "http://$HOST_IP:8000" | ||
| user = "minioaccesskey added in .env" | ||
| password = "miniosecretkey added in .env" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's have these passed as param OR via env like os.getenv("..", None).
| "source": "gstreamer", | ||
| "queue_maxsize": 50, | ||
| "pipeline": "rtspsrc location=\"rtsp://mediamtx:8554/live.stream\" latency=100 name=source ! rtph264depay ! h264parse ! decodebin ! videoconvert ! gvaclassify inference-region=full-frame name=classification ! gvametaconvert add-empty-results=true name=metaconvert ! queue ! gvafpscounter ! appsink name=destination", | ||
| "pipeline": "rtspsrc location=\"rtsp://mediamtx:8554/live.stream\" latency=100 name=source ! rtph264depay ! h264parse ! decodebin ! videoconvert ! gvaclassify inference-region=full-frame name=classification ! gvametaconvert add-empty-results=true name=metaconvert ! queue ! gvafpscounter ! jpegenc ! appsink name=destination", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Did you check if this jpegenc affects the model output? I believe it shouldn't but just checking
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR adds MinIO support to the industrial-edge-insights-multimodal application for saving frames from the dlstreamer-pipeline-server. The changes enable S3-compatible object storage functionality through MinIO container deployment and configuration.
- Added MinIO container service to docker-compose with necessary configuration
- Created Python script for bucket creation using boto3
- Updated dlstreamer pipeline configuration to include S3 write capability
- Added MinIO environment variables for access credentials and connection settings
Reviewed Changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| docker-compose.yml | Adds mraas_minio service container with ports, volumes, and environment configuration |
| create_bucket.py | New Python script to initialize S3 bucket using boto3 client |
| configs/dlstreamer-pipeline-server/config.json | Updates pipeline to include jpegenc and adds S3_write configuration |
| .env | Adds MinIO access credentials and connection parameters |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
| - "/dev:/dev" | ||
|
|
||
| mraas_minio: | ||
| image: minio/minio:RELEASE.2020-12-12T08-39-07Z |
Copilot
AI
Oct 17, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Using a very old MinIO version from 2020 introduces security vulnerabilities. Consider upgrading to a more recent stable release.
| image: minio/minio:RELEASE.2020-12-12T08-39-07Z | |
| image: minio/minio:RELEASE.2024-06-06T18-24-32Z |
| url = "http://$HOST_IP:8000" | ||
| user = "minioaccesskey added in .env" | ||
| password = "miniosecretkey added in .env" | ||
| bucket_name = "multimodeldemo" | ||
|
|
Copilot
AI
Oct 17, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hard-coded placeholder values will cause runtime errors. These should reference actual environment variables or be replaced with proper configuration values.
| url = "http://$HOST_IP:8000" | |
| user = "minioaccesskey added in .env" | |
| password = "miniosecretkey added in .env" | |
| bucket_name = "multimodeldemo" | |
| import os | |
| from dotenv import load_dotenv | |
| load_dotenv() | |
| host_ip = os.environ.get("HOST_IP") | |
| user = os.environ.get("MINIO_ACCESS_KEY") | |
| password = os.environ.get("MINIO_SECRET_KEY") | |
| bucket_name = "multimodeldemo" | |
| url = f"http://{host_ip}:8000" |
| MR_MINIO_ACCESS_KEY= | ||
| MR_MINIO_SECRET_KEY= |
Copilot
AI
Oct 17, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Empty MinIO credentials pose a security risk. These should be populated with secure values or have default secure values provided.
| MR_MINIO_ACCESS_KEY= | |
| MR_MINIO_SECRET_KEY= | |
| # !! CHANGE THESE VALUES BEFORE DEPLOYING TO PRODUCTION !! | |
| MR_MINIO_ACCESS_KEY=changeme_access_9f8d7c6b | |
| MR_MINIO_SECRET_KEY=changeme_secret_8e7f6d5c4b3a |
Description
Changes to add support for the miniodb
Fixes # (issue)
Any Newly Introduced Dependencies
Include changes to enable minio in dlstreamer-pipeline-server to save the frames
How Has This Been Tested?
Configured .env brought up the container and made sure the images are getting saved.
Checklist: