OpenProject_Installation, Error debugging

1. 컨테이너가 정상적으로 실행되고 있는지 확인

먼저 docker ps 명령어로 OpenProject 컨테이너가 실행 중인지 확인하세요.

sh
docker ps

출력 예시:

bash
CONTAINER ID IMAGE COMMAND STATUS PORTS NAMES
abcd1234 openproject/community:12 "docker-entrypoint.s…" Up 5 minutes 0.0.0.0:8080->80/tcp openproject

 

2. 포트가 제대로 열려 있는지 확인

호스트에서 OpenProject 컨테이너의 포트가 정상적으로 열려 있는지 확인합니다.

sh
sudo netstat -tulnp | grep 8080

또는

sh
ss -tulnp | grep 8080

출력 예시:

nginx
tcp LISTEN 0 128 0.0.0.0:8080 0.0.0.0:* -

4. Docker 네트워크 설정 확인

Docker의 네트워크 설정에 문제가 있을 수도 있습니다.

현재 네트워크를 확인:

sh
docker network ls

OpenProject 컨테이너의 IP 주소 확인:

sh
docker inspect openproject | grep "IPAddress"

이후 해당 IP 주소로 직접 접속을 시도해 보세요. 예를 들어, 172.18.0.2가 출력되었다면:

cpp
http://172.18.0.2:80

에 접속해 봅니다.

만약 0.0.0.0:8080->80/tcp가 아니라 127.0.0.1:8080->80/tcp로 매핑되어 있다면, 호스트 머신에서만 접속이 가능하므로 다음과 같이 수정해야 합니다.

docker-compose.ymlports 부분을 다음과 같이 변경:

yaml
ports:
- "0.0.0.0:8080:80"

변경 후 컨테이너를 다시 시작:

sh
docker-compose down
docker-compose up -d

3. 데이터베이스 (PostgreSQL) 문제 확인

OpenProject는 PostgreSQL을 사용합니다. PostgreSQL이 제대로 실행되지 않으면 Service Unavailable 오류가 발생할 수 있습니다.

컨테이너 내부에서 PostgreSQL 서비스가 정상적으로 실행 중인지 확인:

sh
docker exec -it openproject bash
ps aux | grep postgres

🚀 정상적인 경우:

yaml
postgres 123 0.0 0.1 123456 7890 ? Ss 10:00 0:00 postgres

✅ 1. HTTP로 접속해 보기

기본적으로 OpenProject는 **HTTP(포트 80)**를 사용합니다. 만약 https://localhost:8080으로 접속하고 있다면, http://localhost:8080으로 접속을 시도하세요.

📌 확인 방법:
웹 브라우저 주소창에 다음을 입력하고 접속해 보세요.

arduino
http://localhost:8080

🚀 정상 접속된다면:

  • OpenProject가 HTTPS를 사용하도록 설정되지 않은 상태입니다.
  • HTTPS를 사용하려면 **Reverse Proxy(Nginx)**를 설정해야 합니다. (아래 6번 해결 방법 참고)

🛠 2. OpenProject 컨테이너의 포트 확인

먼저, OpenProject 컨테이너가 올바른 포트로 실행되고 있는지 확인하세요.

sh
docker ps | grep openproject

출력 예시:

bash
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
cd8524993568 openproject/community:12 "./docker/prod/entry…" 3 hours ago Up 3 hours 0.0.0.0:8080->80/tcp openproject

🚀 올바른 상태:

  • 0.0.0.0:8080->80/tcp
    → 이 경우, http://라즈베리파이-IP:8080으로 접속해야 합니다.

⚠️ 잘못된 상태 (예: 포트 443만 열려 있음)

  • 0.0.0.0:443->443/tcp
    → HTTPS만 활성화된 상태일 수 있음. 이 경우, https://라즈베리파이-IP로 접속해야 합니다.

🔄 3. OpenProject 컨테이너 재시작

설정이 꼬여 있다면 컨테이너를 재시작해 보세요.

sh
docker-compose restart

또는 개별 컨테이너를 재시작:

sh
docker restart openproject

이후, 다시 접속을 시도해 보세요.


🔍 4. 브라우저 캐시 및 SSL 설정 문제 해결

브라우저 캐시 또는 SSL 설정이 영향을 줄 수 있습니다.

📌 해결 방법:

  • Ctrl + Shift + R 또는 Cmd + Shift + R (Mac)으로 강제 새로고침
  • 다른 브라우저에서 접속 테스트
  • 브라우저에서 고급 옵션 → 예외적으로 사이트 방문 허용 (HTTPS 인증서 경고 무시)

🔍 1. OpenProject 환경 변수 확인

먼저, OpenProject 컨테이너의 환경 변수를 확인하세요.

sh
docker exec -it openproject env | grep OPENPROJECT_HTTPS

출력 결과 예시:

ini
OPENPROJECT_HTTPS=true

🚀 해결 방법:
만약 OPENPROJECT_HTTPS=true로 설정되어 있다면, 이를 비활성화해야 합니다.

📌 환경 변수 수정 방법 (docker-compose.yml 확인 & 수정)

sh
nano docker-compose.yml

아래 항목을 찾아서 수정하세요.

🚨 수정 전 (문제의 원인)

yaml
environment:
OPENPROJECT_HTTPS: "true" # 이 설정이 있으면 HTTP -> HTTPS로 강제 리디렉션됨

수정 후 (HTTPS 강제 리디렉션 해제)

yaml
environment:
OPENPROJECT_HTTPS: "false"

📌 수정 후 컨테이너 재시작

sh
docker-compose down
docker-compose up -d

이제 다시 HTTP로 접속(http://172.18.0.2) 해보세요.


🔄 2. 브라우저 캐시 및 HSTS 문제 해결

한 번이라도 HTTPS로 리디렉션되었을 경우, 브라우저가 이를 기억(HSTS)하여 계속 HTTPS로 접근할 수 있습니다.

📌 해결 방법:

  1. 브라우저 강제 새로고침:
    • Ctrl + Shift + R 또는 Cmd + Shift + R (Mac)
  2. 브라우저 캐시 삭제
    • Ctrl + Shift + Del을 눌러 캐시 삭제 후 다시 시도
  3. HSTS 설정 초기화 (Chrome 기준)
    • chrome://net-internals/#hsts 접속
    • Delete domain security policies에서 172.18.0.2 입력 후 삭제

이후 http://172.18.0.2로 다시 접속을 시도하세요.

댓글 남기기