Make gdown conditional — skip if data already present
Browse files- Dockerfile +8 -7
Dockerfile
CHANGED
|
@@ -49,12 +49,14 @@ RUN apt-get update && \
|
|
| 49 |
COPY --from=builder /app/env/.venv /app/.venv
|
| 50 |
COPY --from=builder /app/env /app/env
|
| 51 |
|
| 52 |
-
# Download shaders21k corpus
|
| 53 |
-
RUN
|
| 54 |
-
|
| 55 |
-
|
| 56 |
-
|
| 57 |
-
|
|
|
|
|
|
|
| 58 |
|
| 59 |
ENV PATH="/app/.venv/bin:$PATH"
|
| 60 |
ENV PYTHONPATH="/app/env:$PYTHONPATH"
|
|
@@ -62,5 +64,4 @@ ENV PYTHONPATH="/app/env:$PYTHONPATH"
|
|
| 62 |
HEALTHCHECK --interval=30s --timeout=3s --start-period=5s --retries=3 \
|
| 63 |
CMD curl -f http://localhost:8000/health || exit 1
|
| 64 |
|
| 65 |
-
ENV ENABLE_WEB_INTERFACE=true
|
| 66 |
CMD ["sh", "-c", "cd /app/env && uvicorn server.app:app --host 0.0.0.0 --port 8000"]
|
|
|
|
| 49 |
COPY --from=builder /app/env/.venv /app/.venv
|
| 50 |
COPY --from=builder /app/env /app/env
|
| 51 |
|
| 52 |
+
# Download shaders21k corpus (skip if data/ already present from COPY)
|
| 53 |
+
RUN if [ ! -d /app/env/data/shadertoy ]; then \
|
| 54 |
+
pip install --no-cache-dir gdown && \
|
| 55 |
+
gdown "1kIiBdeW9CEIfRlYOYTuxfWvN036k3Iig" -O /tmp/shaders.zip && \
|
| 56 |
+
python3 -c "import zipfile; zipfile.ZipFile('/tmp/shaders.zip').extractall('/app/env')" && \
|
| 57 |
+
mv /app/env/shader_codes /app/env/data && \
|
| 58 |
+
rm /tmp/shaders.zip; \
|
| 59 |
+
fi
|
| 60 |
|
| 61 |
ENV PATH="/app/.venv/bin:$PATH"
|
| 62 |
ENV PYTHONPATH="/app/env:$PYTHONPATH"
|
|
|
|
| 64 |
HEALTHCHECK --interval=30s --timeout=3s --start-period=5s --retries=3 \
|
| 65 |
CMD curl -f http://localhost:8000/health || exit 1
|
| 66 |
|
|
|
|
| 67 |
CMD ["sh", "-c", "cd /app/env && uvicorn server.app:app --host 0.0.0.0 --port 8000"]
|