19 lines
690 B
Docker
19 lines
690 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 --no-cache-dir torch && \
|
|
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"]
|