Spaces:
Sleeping
Sleeping
FROM python:3.10 | |
RUN useradd -m -u 1000 user | |
USER root | |
ENV HOME=/home/user \ | |
# PATH=/home/user/.local/bin:$PATH | |
WORKDIR $HOME/app | |
COPY --chown=user:user . $HOME/app | |
# COPY --chown=user . $HOME/app | |
COPY requirements.txt . | |
# COPY ./requirements.txt ~/app/requirements.txt | |
RUN pip install --upgrade pip | |
RUN pip install --no-cache-dir -r requirements.txt | |
# RUN pip install -r requirements. | |
# Expose port | |
EXPOSE 7860 | |
# RUN pip install pydantic==2.10.1 chainlit | |
# COPY . . | |
# Ensure app and .local have proper permissions | |
# USER root | |
RUN chmod -R 755 /home/user/app | |
RUN chmod -R 755 /home/user/.local | |
RUN mkdir -p /home/user/app/.files && chown -R user:user /home/user/app/.files | |
USER user | |
CMD ["chainlit", "run", "app.py", "--host", "0.0.0.0", "--port", "7860"] | |
# CMD ["chainlit", "run", "app.py", "--port", "7860"] | |
FROM python:3.10 | |
# Create user with specific UID | |
RUN useradd -m -u 1000 user | |
# Set environment variables | |
ENV HOME=/home/user \ | |
# PATH=/home/user/.local/bin:$PATH | |
# Set working directory | |
WORKDIR $HOME/app | |
# Copy requirements and install dependencies as root | |
COPY requirements.txt . | |
RUN pip install --upgrade pip && \ | |
# pip install --no-cache-dir -r requirements.txt | |
# Copy application files | |
COPY . . | |
# Create necessary directories and set permissions | |
RUN mkdir -p /home/user/app/.files && \ | |
# mkdir -p /home/user/.local && \ | |
# chown -R user:user /home/user | |
RUN chown -R user:user /home/user && \ | |
# chmod -R 755 /home/user/app | |
# RUN pip install pydantic==2.10.1 chainlit | |
COPY chainlit.md . | |
COPY .chainlit/config.yaml /home/user/app/.chainlit/config.yaml | |
# Expose port | |
EXPOSE 7860 | |
# Switch to non-root user | |
USER user | |
# Run the application | |
# CMD ["chainlit", "run", "app.py", "--host", "0.0.0.0", "--port", "7860", "--no-cache"] | |
CMD ["chainlit", "run", "app.py", "--host", "0.0.0.0", "--port", "7860", "--headless"] | |
CMD ["chainlit", "run", "app.py", "--host", "0.0.0.0", "--port", "7860"] | |
FROM ghcr.io/astral-sh/uv:python3.13-bookworm-slim | |
Add user - this is the user that will run the app | |
If you do not set user, the app will run as root (undesirable) | |
RUN useradd -m -u 1000 user | |
USER user | |
Set the home directory and path | |
ENV HOME=/home/user \ | |
PATH=/home/user/.local/bin:$PATH | |
ENV UVICORN_WS_PROTOCOL=websockets | |
Set the working directory | |
WORKDIR $HOME/app | |
Copy the app to the container | |
COPY --chown=user . $HOME/app | |
Install the dependencies | |
RUN uv sync --frozen | |
RUN uv sync | |
Expose the port | |
EXPOSE 7860 | |
Run the app | |
CMD ["uv", "run", "chainlit", "run", "app_2.py", "--host", "0.0.0.0", "--port", "7860"] |