gpu-zombie-test/scenario-2-tini-only/Dockerfile

19 lines
699 B
Docker

FROM nvidia/cuda:12.1.0-runtime-ubuntu22.04
# 이 이미지(:tini)는 시나리오 3에서도 재사용되므로 prestop.sh를 미리 포함.
# 시나리오 2는 preStop hook 자체가 없어서 prestop.sh를 호출하지 않음.
RUN apt-get update && apt-get install -y python3 python3-pip procps psmisc tini && \
pip3 install torch --break-system-packages && \
rm -rf /var/lib/apt/lists/*
WORKDIR /app
COPY parent.py gpu_worker.py ./
COPY observe.sh /usr/local/bin/observe.sh
COPY prestop.sh /usr/local/bin/prestop.sh
RUN chmod +x /usr/local/bin/observe.sh /usr/local/bin/prestop.sh
# PID 1 = tini (좀비 수거 O, signal 전달 O)
ENTRYPOINT ["tini", "--"]
CMD ["sleep", "infinity"]