utils / Dockerfile
not-lain's picture
update python version
693f296
raw
history blame
2.2 kB
FROM python:3.9
RUN apt-get update && apt-get install -y fakeroot && mv /usr/bin/apt-get /usr/bin/.apt-get && echo '#!/usr/bin/env sh\nfakeroot /usr/bin/.apt-get $@' > /usr/bin/apt-get && chmod +x /usr/bin/apt-get && rm -rf /var/lib/apt/lists/* && useradd -m -u 1000 user
RUN pip install --no-cache-dir pip==22.3.1 && pip install --no-cache-dir datasets "huggingface-hub>=0.19" "hf-transfer>=0.1.4" "protobuf<4" "click<8.1" "pydantic~=1.0"
RUN --mount=target=/tmp/packages.txt,source=packages.txt apt-get update && xargs -r -a /tmp/packages.txt apt-get install -y && apt-get install -y curl && curl -fsSL https://deb.nodesource.com/setup_20.x | bash - && apt-get install -y nodejs && rm -rf /var/lib/apt/lists/* && apt-get clean
RUN ln -s /usr/lib/python3/dist-packages/uno.py /usr/local/lib/python3.10/site-packages/
RUN ln -s /usr/lib/python3/dist-packages/unohelper.py /usr/local/lib/python3.10/site-packages/
RUN apt-get update && apt-get install -y git git-lfs ffmpeg libsm6 libxext6 cmake rsync libgl1-mesa-glx && rm -rf /var/lib/apt/lists/* && git lfs install
COPY --chown=1000:1000 --from=root / /
WORKDIR /home/user/app
RUN --mount=target=/tmp/requirements.txt,source=requirements.txt pip install --no-cache-dir -r /tmp/requirements.txt
RUN pip freeze > /tmp/freeze.txt
RUN pip install --no-cache-dir gradio[oauth]==5.4.0 "uvicorn>=0.14.0" spaces
COPY --link --chown=1000 ./ /home/user/app
COPY --from=pipfreeze --link --chown=1000 /tmp/freeze.txt /tmp/freeze.txt
CMD ["python", "app.py"]
# FROM python:3.9
# WORKDIR /code
# COPY ./requirements.txt /code/requirements.txt
# RUN pip install --no-cache-dir --upgrade -r /code/requirements.txt
# # Set up a new user named "user" with user ID 1000
# RUN useradd -m -u 1000 user
# # Switch to the "user" user
# USER user
# # Set home to the user's home directory
# ENV HOME=/home/user \
# PATH=/home/user/.local/bin:$PATH
# # Set the working directory to the user's home directory
# WORKDIR $HOME/app
# # Copy the current directory contents into the container at $HOME/app setting the owner to the user
# COPY --chown=user . $HOME/app
# #COPY . .
# CMD ["python","app.py"]