Team Library 도메인 및 HTTPS 배포 가이드
목적
team-library.biny.cloud를 Docusaurus 정적 사이트에 연결하고, nginx와 HTTPS까지 안정적으로 운영하기 위한 기준 문서입니다.
적용 대상
- 도메인:
team-library.biny.cloud - 프로젝트 경로:
/root/.openclaw/workspace/docusaurus-team-library - 배포 경로:
/var/www/team-library - 웹서버: nginx
구성 요약
- 콘텐츠 원본:
docusaurus-team-library/ - 빌드 결과물:
docusaurus-team-library/build/ - 실제 서비스 경로:
/var/www/team-library - nginx 적용 파일:
/etc/nginx/sites-available/team-library - nginx enable 링크:
/etc/nginx/sites-enabled/team-library - 인증서 경로:
/etc/letsencrypt/live/team-library.biny.cloud/
선행 조건
- DNS에서
team-library.biny.cloud가 현재 서버 IP를 가리켜야 합니다. - 프로젝트에서
npm run build가 정상 동작해야 합니다. - 서버에 nginx와 certbot이 설치되어 있어야 합니다.
1. 빌드 생성
프로젝트 폴더로 이동한 뒤 정적 사이트를 빌드합니다.
cd /root/.openclaw/workspace/docusaurus-team-library
npm run build
빌드가 성공하면 build/ 폴더가 생성됩니다.
2. 서비스 경로에 배포
빌드 결과물을 nginx가 읽는 경로로 동기화합니다.
sudo mkdir -p /var/www/team-library
sudo rsync -av --delete /root/.openclaw/workspace/docusaurus-team-library/build/ /var/www/team-library/
3. nginx 설정 적용
프로젝트 안의 nginx 템플릿을 실제 서버 설정으로 복사합니다.
sudo cp /root/.openclaw/workspace/docusaurus-team-library/deploy/nginx/team-library.biny.cloud.conf /etc/nginx/sites-available/team-library
sudo ln -s /etc/nginx/sites-available/team-library /etc/nginx/sites-enabled/team-library
이미 심볼릭 링크가 있으면 ln -s 단계는 생략해도 됩니다.
4. nginx 설정 검사 및 반영
sudo nginx -t
sudo systemctl reload nginx
이 단계가 끝나면 HTTP 기준으로 사이트가 열려야 합니다.
5. HTTPS 인증서 적용
HTTP 연결이 정상인 상태에서 certbot으로 인증서를 발급합니다.
sudo certbot --nginx -d team-library.biny.cloud
적용이 끝나면 보통 다음 상태가 됩니다.
- HTTP → HTTPS 리다이렉트
- HTTPS 443 응답 활성화
- 인증서 자동 갱신 대상 등록
확인 방법
curl -I http://team-library.biny.cloud
curl -I https://team-library.biny.cloud
정상 예시:
- HTTP:
301 Moved Permanently - HTTPS:
200 OK
운영 중 재배포 명령
문서나 화면을 수정한 뒤에는 보통 아래 명령이면 충분합니다.
cd /root/.openclaw/workspace/docusaurus-team-library
npm run build && sudo rsync -av --delete build/ /var/www/team-library/
정적 파일만 바뀌는 경우에는 nginx reload가 필수는 아닙니다.