배포하기
정적 파일로 배포
방법1) 프로젝트 경로로 접근후 실행
방법2) 절대 경로로 실행
배포 결과물 확인
기본 경로는 프로젝트 디렉터리 내부의 site디렉터리로 생성됩니다.
--site-dir
옵션을 추가하면 출력물 위치도 지정할수 있습니다.
GitHub기반 배포
GitHub 리포지토리 생성
- GitHub 로그인
- New repository 선택
- 아래와 같이 설정:
- Repository name: 예) my-mkdocs-site
- Public 또는 Private 선택 (Pages 배포 목적이면 Public 권장)
- GitHub Pages서비스는 Public일때 무료
- README 생성 여부는 선택사항 (없어도 문제 없음)
리포지토리 생성 후 주소 예시:
https://github.com/your-username/my-mkdocs-site
Git 초기화
- Git 저장소 초기화
- GitHub 리포지토리와 연결
GitHub에 푸시
100MB를 초과하는 파일이 있으면 에러가 발생합니다.
주로 첨부파일, 정적배포파일로 인하여 발생할 수 있습니다.
- 변경된 파일들을 스테이징
- 커밋(스냅샷) 생성
- 브랜치 이름을 main으로 설정
- GitHub로 푸시
자동 배포 연동
GitHub Actions를 이용해 GitHub Pages에 자동 배포하는 CI/CD 설정
아래의 설정을 마치면, 이후로는 main 브랜치가 갱신될 때 자동으로 배포가 이루어 진다.
- GitHub Actions 권한 설정
- 리포지토리 → Settings > Actions > General
- Workflow permissions 항목에서 Read and write permissions 를 선택
- GitHub Pages 설정
GitHub Pages는 public리포지토리일 경우 무료로 사용가능합니다.
- 리포지토리 → Settings → Pages
- 다음과 같이 설정
- Source: Deploy from a branch
- Branch: gh-pages
- Folder: / (root)
- 프로젝트 디렉터리에 .github디렉터리를 생성한다.
- .github 디렉터리에 workflows디렉터리를 생성한다.
-
workflows 디렉터리에 deploy.yml파일을 생성한다.
디렉터리 구조 예시
-
.github/workflows/deploy.yml파일의 내용은 다음과 같이 작성한다.
- .github/workflows/deploy.yml 파일을 Git 스테이지에 추가
해당 파일을 Git에 추적 대상으로 추가(staging) 합니다.
- 변경사항을 커밋 (Git 히스토리에 기록)
- GitHub로 푸시
로컬에서 커밋한 내용을 GitHub의 main 브랜치에 업로드
업로드가 완료되면, GitHub는 main 브랜치에 push가 발생했음을 감지하고,
.github/workflows/deploy.yml
파일에 따라 GitHub Actions가 자동 실행됩니다. - GitHub에서 동작 확인
- 리포지토리 페이지로 이동
- 상단 탭 중 Actions 클릭
- “Add deploy.yml”라는 워크플로가 실행되고 있어야 합니다.
- 완료 표시가 뜨면 배포 성공
- 성공한 workflow에 들어가보면, deploy에 url이 표시되고 있습니다. 해당 url로 접속하면 확인가능합니다.
- 이후로는 main브랜치에 push시 자동으로 Action이 동작하여 배포가 진행됩니다.