빠른 시작
이 페이지는 새로 설치한 상태에서 동작하는 서버까지 안내합니다. 먼저 8080번 포트에서 정적 사이트를 제공하고, 다음으로 리버스 프록시를 둡니다.
1. ✍️ 설정 작성
섹션 제목: “1. ✍️ 설정 작성”Pingclairfile이라는 파일을 만듭니다.
localhost:8080 { file_server ./public}파일에는 site block이 하나뿐입니다. localhost:8080은 이 사이트가 응답하는 주소이고, file_server는 파일 제공을, ./public은 파일을 읽을 디렉터리를 뜻하며 실행 시 작업 디렉터리를 기준으로 합니다.
2. ✅ 검증
섹션 제목: “2. ✅ 검증”pingclair validatevalidate는 기본적으로 ./Pingclairfile을 읽고 ./Caddyfile도 감지합니다. 설정을 컴파일하고 인증서 경로 같은 의미 조건을 검사하며, 문제가 있으면 0이 아닌 코드로 종료합니다. 검증은 권고가 아닙니다. 검증에 실패한 설정은 실행되지 않습니다.
설정을 작성하는 동안에는 다음 두 명령도 유용합니다.
pingclair adapt --pretty # 컴파일된 JSON 형식 출력pingclair fmt --diff # 서식 차이만 표시(파일은 쓰지 않음)3. 🚀 실행
섹션 제목: “3. 🚀 실행”pingclair run Pingclairfile프로세스는 열어 둔 listener를 기록하고, 종료 신호를 받을 때까지 요청을 처리합니다.
4. 🔍 확인
섹션 제목: “4. 🔍 확인”다른 터미널에서:
curl -i http://localhost:8080/제공된 파일의 ETag와 Last-Modified 헤더와 함께 200이 돌아와야 합니다.
요청이 멈춘다면 시스템 프록시가 루프백 트래픽을 가로채는지 확인하고 curl --noproxy '*'로 다시 시도하십시오.
5. 🔁 애플리케이션 프록시
섹션 제목: “5. 🔁 애플리케이션 프록시”site block을 3000번 포트 백엔드로 전달하는 리버스 프록시로 바꿉니다.
localhost:8080 { reverse_proxy localhost:3000}같은 명령으로 다시 검증하고 실행합니다. 이제 응답은 백엔드에서 옵니다. 여러 업스트림, 부하 분산 정책, 상태 확인, 실패 시 동작은 reverse_proxy를 참고하십시오.
6. 🔒 TLS 종료
섹션 제목: “6. 🔒 TLS 종료”공개 도메인 이름은 인증서를 자동으로 발급받습니다.
{ email admin@example.com}
example.com { reverse_proxy localhost:3000}자동 HTTPS는 사이트 주소가 공개 이름이고 ACME 챌린지가 서버에 도달할 수 있어야 하며, 보통 80번 포트를 뜻합니다. 사설 오리진에는 tls internal을 사용해 로컬 인증 기관에서 발급합니다. 클라이언트는 $PINGCLAIR_TLS_STORE/internal/root.crt에 있는 루트 인증서를 신뢰해야 합니다.
7. ⚙️ 서비스로 실행
섹션 제목: “7. ⚙️ 서비스로 실행”설치 스크립트는 systemd 유닛을 만들고 pc 명령으로 관리할 수 있게 합니다.
pc service startpc service statuspc service reload # 재시작 없이 설정을 다시 읽음