HumanSignal / HumanSignal/label-studio

When using external MinIO as the data storage, the successfully uploaded images fail to display and cannot be annotated.

Open
#8,843 4 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
28.3k
Forks
3.7k
Avg merge
14h
Merged PRs (30d)
15

Description

**Describe the bug**
Holle. When using external MinIO as the data storage, the successfully uploaded images fail to display and cannot be annotated.

**To Reproduce**
Steps to reproduce the behavior:
1. Configure to use MinIO as the data storage
2. Create a project and upload images
3. The images fail to display

**Screenshots**
If applicable, add screenshots to help explain your problem.

Image

Image

Image

Image

Console output is as follows:

```

sti-label-studio-1 | {"timestamp": "19/Nov/2025:09:13:21 +0000", "source": "uwsgi", "levelname": "INFO", "message": "Starting new HTTPS connection (1): pypi.org:443"}
sti-label-studio-1 | {"timestamp": "19/Nov/2025:09:13:21 +0000", "source": "uwsgi", "levelname": "INFO", "message": "https://pypi.org:443 \"GET /pypi/label-studio/json HTTP/1.1\" 200 35580"}
sti-label-studio-1 | {"timestamp": "19/Nov/2025:09:13:23 +0000", "source": "uwsgi", "levelname": "INFO", "message": "https://pypi.org:443 \"GET /pypi/label-studio/json HTTP/1.1\" 200 35580"}
sti-label-studio-1 | {"timestamp": "19/Nov/2025:09:13:24 +0000", "source": "uwsgi", "levelname": "INFO", "message": "WSGI app 0 (mountpoint='') ready in 15 seconds on interpreter 0x7f47406719d0 pid: 696 (default app)"}
sti-label-studio-1 | {"timestamp": "19/Nov/2025:09:13:31 +0000", "source": "uwsgi", "levelname": "INFO", "message": "WSGI app 0 (mountpoint='') ready in 22 seconds on interpreter 0x7f47406719d0 pid: 697 (default app)"}
sti-label-studio-1 | /label-studio/.venv/lib/python3.13/site-packages/rest_framework/pagination.py:207: UnorderedObjectListWarning: Pagination may yield inconsistent results with an unordered object_list: QuerySet.
sti-label-studio-1 | paginator = self.django_paginator_class(queryset, page_size)
sti-label-studio-1 |
sti-label-studio-1 | /label-studio/.venv/lib/python3.13/site-packages/rest_framework/pagination.py:207: UnorderedObjectListWarning: Pagination may yield inconsistent results with an unordered object_list: QuerySet.
sti-label-studio-1 | paginator = self.django_paginator_class(queryset, page_size)
sti-label-studio-1 |

```

**Environment (please complete the following information):**

docker-compose.yml

```
services:
sti-label-studio:
stdin_open: true
tty: true
image: heartexlabs/label-studio:latest
restart: unless-stopped
expose:
- "8000"
ports:
- "35001:8000"
environment:
- DJANGO_DB=default
- POSTGRE_NAME=${POSTGRE_NAME}
- POSTGRE_USER=${POSTGRE_USER}
- POSTGRE_PASSWORD=${POSTGRE_PASSWORD}
- POSTGRE_PORT=${POSTGRE_PORT}
- POSTGRE_HOST=${POSTGRE_HOST}
- LABEL_STUDIO_HOST=${LABEL_STUDIO_HOST:-}

- AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID}
- AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY}
- AWS_STORAGE_BUCKET_NAME=${AWS_STORAGE_BUCKET_NAME}
- AWS_S3_ENDPOINT_URL=${AWS_S3_ENDPOINT_URL}
- AWS_S3_REGION_NAME=${AWS_S3_REGION_NAME}
- AWS_DEFAULT_ACL=${AWS_DEFAULT_ACL}
- USE_S3_STORAGE=${USE_S3_STORAGE}

- STORAGE_TYPE=${STORAGE_TYPE}
- STORAGE_AWS_ACCESS_KEY_ID=${STORAGE_AWS_ACCESS_KEY_ID}
- STORAGE_AWS_SECRET_ACCESS_KEY=${STORAGE_AWS_SECRET_ACCESS_KEY}
- STORAGE_AWS_BUCKET_NAME=${STORAGE_AWS_BUCKET_NAME}
- STORAGE_AWS_FOLDER=${STORAGE_AWS_FOLDER}
- STORAGE_AWS_REGION_NAME=${STORAGE_AWS_REGION_NAME}
- STORAGE_AWS_ENDPOINT_URL=${STORAGE_AWS_ENDPOINT_URL}
- STORAGE_AWS_OBJECT_PARAMETERS=${STORAGE_AWS_OBJECT_PARAMETERS}

- JSON_LOG=1
# - LOG_LEVEL=DEBUG
volumes:
- /data/sti/label-studio/data:/label-studio/data:rw
command: label-studio-uwsgi

```

**Additional context**
Add any other context about the problem here.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.