Skip to content

Commit bd42b4e

Browse files
committed
fix
1 parent 03f7850 commit bd42b4e

1 file changed

Lines changed: 14 additions & 55 deletions

File tree

Dockerfile

Lines changed: 14 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -1,60 +1,19 @@
1-
# 베이스 이미지 선택
2-
FROM python:3.13-slim
3-
4-
5-
# 시스템 라이브러리 설치
6-
RUN apt-get update && apt-get install -y --no-install-recommends \
7-
libjpeg-dev \
8-
libpng-dev \
9-
zlib1g-dev \
10-
&& rm -rf /var/lib/apt/lists/*
11-
# RUN apt-get update && apt-get install -y --no-install-recommends \
12-
# curl unzip ca-certificates libaio1 libnsl2 \
13-
# && rm -rf /var/lib/apt/lists/*
14-
RUN apt-get update && \
15-
apt-get install -y --no-install-recommends \
16-
curl \
17-
unzip \
18-
ca-certificates \
19-
libaio1 \
20-
libnsl2 && \
21-
apt-get clean && \
22-
rm -rf /var/lib/apt/lists/*
23-
24-
# Oracle Instant Client 설치
25-
ARG IC_VER_DIR=instantclient_23_9
26-
ARG IC_ZIP=instantclient-basiclite-linux.x64-23.9.0.25.07.zip
27-
COPY docker/instantclient/${IC_ZIP} /tmp/${IC_ZIP}
28-
RUN mkdir -p /opt/oracle \
29-
&& unzip /tmp/${IC_ZIP} -d /opt/oracle \
30-
&& rm /tmp/${IC_ZIP}
1+
# ----- 디버깅용 Dockerfile 시작 -----
312

32-
# 런타임에서 클라이언트 찾도록 환경변수
33-
ENV LD_LIBRARY_PATH=/opt/oracle/${IC_VER_DIR}
34-
ENV ORACLE_CLIENT_LIB_DIR=/opt/oracle/${IC_VER_DIR}
35-
ENV LD_LIBRARY_PATH=/opt/oracle/${IC_VER_DIR}
36-
37-
# 작업 디렉토리 설정
38-
WORKDIR /app
39-
40-
# 의존성 파일 복사 및 설치
41-
COPY requirements.txt .
3+
FROM python:3.13-slim
424

43-
# 의존성 설치 후 문제가 되는 opencv-python을 강제로 삭제
44-
RUN pip install --no-cache-dir --upgrade -r requirements.txt && \
45-
pip uninstall -y opencv-python opencv-python-headless && \
46-
pip install opencv-python-headless==4.12.0.88 && \
47-
pip install --no-cache-dir --upgrade pip setuptools wheel
5+
# 1단계: OS 정보와 패키지 저장소 목록을 직접 확인합니다.
6+
# 이 로그를 통해 어떤 서버에서 패키지를 받아오려 하는지 알 수 있습니다.
7+
RUN cat /etc/os-release && \
8+
echo "---" && \
9+
cat /etc/apt/sources.list
4810

49-
# 프로젝트 전체 코드 복사
50-
COPY ./app ./app
51-
COPY ./models ./models
52-
# .env 파일 복사
53-
COPY ./.env ./.env
11+
# 2단계: 패키지 목록 업데이트를 단독으로 실행하여 네트워크 오류 등이 있는지 확인합니다.
12+
# 여기서 나오는 로그가 가장 중요합니다. (예: 404 Not Found, Could not resolve host 등)
13+
RUN apt-get update
5414

55-
# 컨테이너 내부에서 사용할 포트
56-
EXPOSE 8082
15+
# 3단계: 업데이트된 목록에서 libaio1을 검색할 수 있는지 확인합니다.
16+
# 여기서 아무것도 출력되지 않는다면, update가 실패했거나 저장소 목록에 문제가 있는 것입니다.
17+
RUN apt-cache search libaio1
5718

58-
# 컨테이너 시작 명령어
59-
# 0.0.0.0 호스트로 실행해야 외부에서 접근 가능합니다.
60-
CMD ["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "8082"]
19+
# ----- 디버깅용 Dockerfile 끝 -----

0 commit comments

Comments
 (0)