|
FROM pytorch/pytorch:2.1.2-cuda12.1-cudnn8-runtime as base |
|
|
|
ENV DEBIAN_FRONTEND=noninteractive |
|
ENV LANG en_US.UTF-8 |
|
ENV LANGUAGE en_US:UTF-8 |
|
ENV LC_ALL en_US.UTF-8 |
|
|
|
RUN apt update -y \ |
|
&& apt install libgl1-mesa-glx libglib2.0-0 libsm6 libxext6 libxrender-dev swig curl git vim gcc \g++ make wget locales dnsutils zip unzip cmake nginx -y \ |
|
&& apt install gcc-10 \g++-10 -y \ |
|
&& curl -fsSL https://deb.nodesource.com/setup_20.x | bash - \ |
|
&& apt-get install -y nodejs \ |
|
&& npm install -g npm@10.3.0 \ |
|
&& npm install -g create-react-app \ |
|
&& npm install typescript -g \ |
|
&& npm install -g vite \ |
|
&& apt clean \ |
|
&& rm -rf /var/cache/apt/* \ |
|
&& sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen \ |
|
&& locale-gen |
|
|
|
ADD nginx.conf /etc/nginx/nginx.conf |
|
|
|
|
|
RUN useradd -m -u 1000 user |
|
|
|
RUN mkdir -p /var/cache/nginx \ |
|
/var/log/nginx \ |
|
/var/lib/nginx |
|
RUN touch /var/run/nginx.pid |
|
RUN touch /run/nginx.pid |
|
|
|
RUN chown -R user:user /var/cache/nginx \ |
|
/var/log/nginx \ |
|
/var/lib/nginx \ |
|
/var/run/nginx.pid \ |
|
/run/nginx.pid |
|
|
|
|
|
USER user |
|
|
|
|
|
ENV HOME=/home/user \ |
|
PATH=/home/user/.local/bin:$PATH |
|
|
|
WORKDIR $HOME/workspace |
|
|
|
ADD --chown=user DI-engine DI-engine |
|
ADD --chown=user LightZero LightZero |
|
ADD --chown=user gomoku_server_ui gomoku_server_ui |
|
ADD --chown=user run.sh run.sh |
|
|
|
RUN python3 -m pip install --upgrade pip |
|
|
|
RUN cd ./DI-engine \ |
|
&& python3 -m pip install -e .[video] \ |
|
&& cd .. |
|
|
|
RUN cd ./LightZero \ |
|
&& python3 -m pip install -e . \ |
|
&& cd .. |
|
|
|
RUN cd ./gomoku_server_ui \ |
|
&& cd frontend \ |
|
&& npm install \ |
|
&& cd .. \ |
|
&& cd backend \ |
|
&& pip install -r requirement.txt \ |
|
&& cd .. \ |
|
&& cd .. |
|
|
|
|
|
RUN cd $HOME/workspace \ |
|
&& chmod 777 run.sh |
|
|
|
EXPOSE 3000 |
|
EXPOSE 5001 |
|
EXPOSE 2333 |
|
|
|
CMD sh ./run.sh |