SemSorter commited on
Commit
7d24b00
·
1 Parent(s): c27555f

Configure Dockerfile for Hugging Face Spaces

Browse files
Files changed (1) hide show
  1. Dockerfile +12 -7
Dockerfile CHANGED
@@ -18,15 +18,20 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
18
  && apt-get clean \
19
  && rm -rf /var/lib/apt/lists/*
20
 
 
 
 
 
 
21
  # ── Create working directory ──────────────────────────────────────────────────
22
  WORKDIR /app
23
 
24
  # ── Copy requirements first (layer caching) ──────────────────────────────────
25
- COPY requirements-server.txt ./
26
  RUN pip install --no-cache-dir -r requirements-server.txt
27
 
28
  # ── Copy project ──────────────────────────────────────────────────────────────
29
- COPY . .
30
 
31
  # ── Download MuJoCo Menagerie (Panda arm) ─────────────────────────────────────
32
  RUN git clone --depth 1 --filter=blob:none --sparse https://github.com/google-deepmind/mujoco_menagerie.git \
@@ -38,13 +43,13 @@ RUN git clone --depth 1 --filter=blob:none --sparse https://github.com/google-de
38
  ENV MUJOCO_GL=egl
39
  ENV PYOPENGL_PLATFORM=egl
40
 
41
- # ── Expose port ───────────────────────────────────────────────────────────────
42
- EXPOSE 8000
43
-
44
- # ── Limit Threads to save memory on Render Free Tier ──────────────────────────
45
  ENV OPENBLAS_NUM_THREADS=1
46
  ENV OMP_NUM_THREADS=1
47
  ENV MKL_NUM_THREADS=1
48
 
 
 
 
49
  # ── Start server ──────────────────────────────────────────────────────────────
50
- CMD ["uvicorn", "SemSorter.server.app:app", "--host", "0.0.0.0", "--port", "8000", "--workers", "1"]
 
18
  && apt-get clean \
19
  && rm -rf /var/lib/apt/lists/*
20
 
21
+ # ── Create user for Hugging Face Spaces ───────────────────────────────────────
22
+ RUN useradd -m -u 1000 user
23
+ USER user
24
+ ENV PATH="/home/user/.local/bin:$PATH"
25
+
26
  # ── Create working directory ──────────────────────────────────────────────────
27
  WORKDIR /app
28
 
29
  # ── Copy requirements first (layer caching) ──────────────────────────────────
30
+ COPY --chown=user ./requirements-server.txt requirements-server.txt
31
  RUN pip install --no-cache-dir -r requirements-server.txt
32
 
33
  # ── Copy project ──────────────────────────────────────────────────────────────
34
+ COPY --chown=user . /app
35
 
36
  # ── Download MuJoCo Menagerie (Panda arm) ─────────────────────────────────────
37
  RUN git clone --depth 1 --filter=blob:none --sparse https://github.com/google-deepmind/mujoco_menagerie.git \
 
43
  ENV MUJOCO_GL=egl
44
  ENV PYOPENGL_PLATFORM=egl
45
 
46
+ # ── Limit Threads ─────────────────────────────────────────────────────────────
 
 
 
47
  ENV OPENBLAS_NUM_THREADS=1
48
  ENV OMP_NUM_THREADS=1
49
  ENV MKL_NUM_THREADS=1
50
 
51
+ # ── Expose port ───────────────────────────────────────────────────────────────
52
+ EXPOSE 7860
53
+
54
  # ── Start server ──────────────────────────────────────────────────────────────
55
+ CMD ["uvicorn", "SemSorter.server.app:app", "--host", "0.0.0.0", "--port", "7860", "--workers", "1"]