IDM-VITON-MM / Dockerfile
parokshsaxena
for fixing ImportError: libGL.so.1: c
0bd8c50
FROM continuumio/anaconda3:main
# Set the working directory inside the container
WORKDIR /code
# Copy the environment.yaml file into the container
COPY ./environment.yaml /code/environment.yaml
# Create the conda environment using the environment.yaml file
RUN conda env create -f /code/environment.yaml
# Update package lists and install necessary libraries
RUN apt-get update && \
apt-get install -y libgl1-mesa-glx && \
rm -rf /var/lib/apt/lists/*
# Set the environment variable for LD_LIBRARY_PATH
ENV LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/mesa
# 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 environment variables
ENV HOME=/home/user \
PYTHONPATH=$HOME/app \
PYTHONUNBUFFERED=1 \
GRADIO_ALLOW_FLAGGING=never \
GRADIO_NUM_PORTS=1 \
GRADIO_SERVER_NAME=0.0.0.0 \
GRADIO_THEME=huggingface \
SYSTEM=spaces
# 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
# Ensure conda is initialized for the user
RUN echo "source activate idm" >> ~/.bashrc
# Set the entry point to run.sh
ENTRYPOINT ["conda", "run", "--no-capture-output", "-n", "idm", "/bin/bash", "./run.sh"]