포스트

phpBB 포럼 만들기

사용한 이미지

문제

phpBB가 웹브라우저에서 열리지 않는다. 로그를 살펴보니 MariaDB는 준비되었다는데 phpBB가 MariaDB에 접속하지 못하고 있었다.

해결

docker-compose.yml에서 phpBB가 MariaDB에 의존(depends_on)하도록 설정했다. MariaDB가 준비된 다음에 phpBB가 시작된다고 생각했는데, 잘못된 생각이었다.

MariaDB의 포트(3306)를 노출시키고 다른 컴퓨터에서 MySQL 클라이언트를 사용해서 데이터베이스에 접속해봤다. MariaDB에는 문제가 없었다.

컨테이너를 만들 때 --detach(-d) 옵션을 제거해서 로그를 실시간으로 확인했다.

  1. phpBB가 먼저 만들어지고 MariaDB에 접속을 시도한다
  2. MariaDB는 아직 준비되지 않았다
  3. phpBB는 MariaDB에 접속하지 못했다는 오류 메세지를 출력하고 종료된다

phpBB가 재시작해서 MariaDB에 접속을 계속 시도하도록 설정했다. docker-compose.yml에 restart: unless-stopped을 추가하면 된다.

약 5분 정도 기다리니까 웹브라우저에서 phpBB에 접속이 된다. 로그를 살펴보니 시간이 왜 이렇게 오래 걸리는지 알 수 있었다. phpBB가 처음 시작될 때 MariaDB 데이터베이스를 구성하고 필요한 자료들을 설치하느라 시간이 오래 걸리는 것이었다.

이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.

Comments powered by Disqus.