traning / Dockerfile
aikobay's picture
Update Dockerfile
666faa4 verified
# 1. Python 3.9 ๊ธฐ๋ฐ˜ ์ด๋ฏธ์ง€ ์‚ฌ์šฉ
FROM python:3.9
# 2. ์ž‘์—… ๋””๋ ‰ํ† ๋ฆฌ ์„ค์ •
WORKDIR /app
# 3. ํ•„์ˆ˜ ํŒจํ‚ค์ง€ ์„ค์น˜ (libaio1์€ Oracle Instant Client์— ํ•„์š”)
RUN apt-get update && apt-get install -y libaio1 unzip
# 3-2. Hugging Face ์บ์‹œ ๋””๋ ‰ํ† ๋ฆฌ ๋ณ€๊ฒฝ (๊ถŒํ•œ ๋ฌธ์ œ ๋ฐฉ์ง€)
ENV HF_HOME="/app/.cache/huggingface"
RUN mkdir -p $HF_HOME && chmod -R 777 $HF_HOME
# 4. Oracle Instant Client ์ €์žฅ ๊ฒฝ๋กœ ์„ค์ • (์˜๊ตฌ ์ €์žฅ ๊ฐ€๋Šฅํ•˜๊ฒŒ)
ENV ORACLE_CLIENT_PATH="/opt/oracle"
RUN mkdir -p $ORACLE_CLIENT_PATH
# 5. Oracle Instant Client ์••์ถ•ํŒŒ์ผ ๋ณต์‚ฌ
COPY instantclient-basic-linux.x64-19.26.0.0.0dbru.zip $ORACLE_CLIENT_PATH/
# 6. Oracle Instant Client ์„ค์น˜ (์ด๋ฏธ ์žˆ์œผ๋ฉด ๋‹ค์‹œ ์„ค์น˜ํ•˜์ง€ ์•Š์Œ)
RUN test -d "$ORACLE_CLIENT_PATH/instantclient_19_26" || ( \
unzip $ORACLE_CLIENT_PATH/instantclient-basic-linux.x64-19.26.0.0.0dbru.zip -d $ORACLE_CLIENT_PATH && \
rm $ORACLE_CLIENT_PATH/instantclient-basic-linux.x64-19.26.0.0.0dbru.zip \
)
# 7. Instant Client ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์„ค์ •
ENV LD_LIBRARY_PATH="$ORACLE_CLIENT_PATH/instantclient_19_26:$LD_LIBRARY_PATH"
ENV ORACLE_HOME="$ORACLE_CLIENT_PATH/instantclient_19_26"
# 8. Python ํŒจํ‚ค์ง€ ์„ค์น˜ (์ด ๋‹จ๊ณ„๊นŒ์ง€ ์บ์‹ฑ ์œ ์ง€)
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
# 9. โœ… Checkpoint ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•  ๋ณผ๋ฅจ ์„ค์ • & ๊ถŒํ•œ ๋ถ€์—ฌ
#VOLUME ["/data"]
#RUN mkdir -p /data && chmod -R 777 /data
# 10. ์†Œ์Šค ์ฝ”๋“œ ๋ณต์‚ฌ
COPY . .
# 11. ์‹คํ–‰ํ•  Python ์Šคํฌ๋ฆฝํŠธ ์ง€์ •
# ๊ธฐ๋ณธ ์‹คํ–‰ ๋ช…๋ น ์„ค์ • - ์ถ”๊ฐ€ ํ•™์Šต ๋ชจ๋“œ๋กœ ์‹คํ–‰
#CMD ["python", "main.py", "--mode", "initial"]
#CMD ["python", "main.py", "--mode", "incremental"]
#CMD ["python", "powersearchtraning.py", "--mode", "incremental"]
#CMD ["python", "fastRecommend.py", "--mode", "incremental"]
#CMD ["python", "searchHybridAsync.py", "--mode", "incremental"]
#CMD ["python", "searchAsyncTunning.py", "--mode", "incremental"]
#CMD ["python", "searchAsyncSingle.py"]
#CMD ["python", "searchAsyncSingleTuning.py"]
CMD ["python", "searchWorker.py"]