GitHub Pages에 VuePress 적용하기
GitHubPages, Jekyll, VuePress
서론
올해 초 가리사니 개발자공간을 종료하고 GitHub Pages에 Jekyll을 적용하여 블로그 운영을 시작했습니다.
문제는 루비 언어를 사용할 줄 모르고 Jekyll의 자유도가 낮아 만족스럽지 않았습니다.
거기다가 로컬에서 실행하는 방법을 몰라 글을 고칠 때마다 GitHub에 푸시하고 오류가 날 경우 수정하고 다시 푸시하는 번거로움이 있었습니다.
그래서 JavaScript 기반의 VuePress를 적용해보기로 했습니다.
VuePress 설치
- https://vuepress.vuejs.org/
- https://vuepress.vuejs.org/guide/getting-started.html
vuePress v2.0.0-rc.9 / yarn 기준으로 설명하겠습니다.
yarn create vuepress 프로젝트이름
# 위저드가 실행되며 선택지를 선택하면 프로젝트가 생성됩니다.
- 이상하게 매뉴얼 업데이트가 안되어 별도로 설정해줘야하는 것들이 있습니다.
- 그래서 .github/workflows/deploy-docs.yml 파일을 수정합니다.
name: Deploy Docs on: push: branches: - <퍼블리시 타겟 브랜치> permissions: contents: write jobs: deploy-gh-pages: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 with: fetch-depth: 0 - name: Setup Node.js uses: actions/setup-node@v4 with: node-version: 20 cache: yarn - name: Install Deps run: yarn install - name: Build Docs env: NODE_OPTIONS: --max_old_space_size=8192 run: |- yarn run docs:build > docs/.vuepress/dist/.nojekyll - name: Deploy Docs uses: JamesIves/github-pages-deploy-action@v4 with: # This is the branch where the docs are deployed to branch: gh-pages folder: docs/.vuepress/dist
- branch: gh-pages 부분은 업로드를 할 브랜치로 설정합니다. (gh-pages를 예로 설졍하겠습니다.)
- 깃허브 리포지토리의 /settings/pages 에서 브랜치를 gh-pages로 설정합니다. (/root)
- 이제 <퍼블리시 타겟="" 브랜치=""> 에 커밋하면 자동으로 배포됩니다.퍼블리시>
로컬 실행
yarn docs:dev
후기 및 결론
- 사람들이 왜 VuePress를 안쓰고 Jekyll을 쓰는지 알 것 같다…
- 자바스크립트를 사용해서 자유도가 높을 줄 알았는데 지킬보다도 자유도가 떨어진다.
- 메뉴나 메인페이지마저도 마음대로 설정할 수 없다.
- 주어진 규격이 있고 그 규격을 벗어날 수 없다.
- 그럼 내일은 다시 지킬을 설정해보도록 하겠다.
- 나중에 여유가 난다면… 직접 GitHub용 블로그 시스템을 만들어 보는것도 나쁘지 않을 것 같다.
- 다음글: Jekyll 로컬실행
- 이전글: 근황, 기초강의라도 다시 써볼까