diff --git a/label_studio_ml/examples/yolov8/Dockerfile b/label_studio_ml/examples/yolov8/Dockerfile index d86a8ab1..1e52aed4 100644 --- a/label_studio_ml/examples/yolov8/Dockerfile +++ b/label_studio_ml/examples/yolov8/Dockerfile @@ -6,11 +6,9 @@ RUN apt-get update && \ apt-get -y install ffmpeg libsm6 libxext6 libffi-dev python3-dev gcc ENV PYTHONUNBUFFERED=True \ - PORT=9090 \ - WORKERS=2 \ - THREADS=4 + PORT=9090 -WORKDIR /app +WORKDIR /tmp COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt @@ -18,6 +16,16 @@ RUN pip install --no-cache-dir -r requirements.txt RUN wget https://github.com/ultralytics/assets/releases/download/v0.0.0/yolov8n-oiv7.pt RUN wget https://github.com/ultralytics/assets/releases/download/v0.0.0/yolov8n.pt -COPY . ./ +COPY uwsgi.ini /etc/uwsgi/ +COPY supervisord.conf /etc/supervisor/conf.d/ + +WORKDIR /app + +RUN mkdir -p datasets/temp/images +RUN mkdir -p datasets/temp/labels + +COPY * /app/ + +EXPOSE 9090 -CMD exec gunicorn --preload --bind :$PORT --workers $WORKERS --threads $THREADS --timeout 0 _wsgi:app +CMD ["/usr/local/bin/supervisord", "-c", "/etc/supervisor/conf.d/supervisord.conf"] \ No newline at end of file diff --git a/label_studio_ml/examples/yolov8/requirements.txt b/label_studio_ml/examples/yolov8/requirements.txt index 23a7f7a0..63edee8a 100644 --- a/label_studio_ml/examples/yolov8/requirements.txt +++ b/label_studio_ml/examples/yolov8/requirements.txt @@ -47,5 +47,6 @@ typing_extensions==4.8.0 tzdata==2023.3 ultralytics==8.0.200 urllib3==2.0.7 -# Werkzeug==2.0.2 +supervisor==4.2.2 +uwsgi==2.0.21 rq