-
[Docker] 도커 Django-MySQL docker-compose 에러(feat. dockerize)Docker 2021. 4. 28. 23:27728x90
docker-compose로 dockerfile을 실행했을 때, DB 컨테이너가 먼저 실행되고 Web(Django)이 실행되어야 하는데
DB 컨테이너가 돌면서 MySQL 서버가 실행되기까지 Django가 기다리지 못해서 에러가 발생합니다.
이를 위한 해결 방법으로 dockerize를 사용해서 대기 시간을 걸어놓았습니다.
Backend dockerfile 내 dockerize 추가하기
- docker-compose.yml
version: '3' services: db: container_name: db build: ./Database ports: - "3306:3306" backend: container_name: back build: ./Backend ports: - "8000:8000" restart: always # 재실행 시도 frontend: container_name: front build: ./Frontend/dockerpjt ports: - "8080:8080"
- Dockerfile(Backend)
FROM python:3.8.2 ENV DOCKERIZE_VERSION v0.6.1 RUN wget https://github.com/jwilder/dockerize/releases/download/$DOCKERIZE_VERSION/dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz \ && tar -C /usr/local/bin -xzvf dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz \ && rm dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz # DB연결되기까지 20초 대기시간 걸어놓기 ENTRYPOINT ["dockerize", "-wait", "tcp://db:3306", "-timeout", "20s"]
- 이상 오늘의 삽질일기 끝!
https://ninano1109.tistory.com/129
여기저기 삽질도 해보고
날려도 먹으면서
배우는 게
결국 남는거다
- Z.Sabziller
'Docker' 카테고리의 다른 글
[Docker] 도커 기본 명령어 모음 (0) 2021.05.16 [Docker] docker 도커 실행 오류 및 재시작 해결 방법 (0) 2021.05.13 [Docker] Django-MySQL DB dockerfile 계정 연동하기 (0) 2021.04.28 [Docker] 도커 이미지 & 컨테이너 중지 및 삭제 (0) 2021.04.28 [Docker] Docker 도커 MySQL 버전 호환 문제(feat.Mac M1) (2) 2021.04.28