Hexo 설정과 배포
Hexo로 Github 블로그를 만들었지만 포스팅을 자주 하지 않다보니 배포 과정을 매번 잊어버려서 정리해두면 좋을것 같아 포스팅 한다.
포스팅 하는김에 블로그의 생성, 설정과 배포까지의 과정을 적어본다.
깃허브 페이지는 지킬(Jekyll)과 헥소(Hexo)가 많이 사용되며 지킬이 대표적으로 사용된다. 지킬을 살펴보니 Ruby로 구동되고 Hexo는 NodeJs로 구동되었다.
Ruby는 레거시의 느낌이라 나는 NodeJs로 구동되는 Hexo로 블로그를 만들기로 하였다.
- Github Page - https://pages.github.com
- Hexo - https://hexo.io
Github Pages로 Hosting과 웹페이지 만들기
Github Repository 생성하기
Github 가입 후 Repository를 생성한다.
- New Repository, Repository 이름은 Username.github.io로 생성
- Username은 Github 가입시의 사용자의 Username을 입력
- Public / Private 중 Public 선택
- Create Repositiory 버튼을 눌러 Repository 생성
Clone the Repository
Github에서 생성한 Repository를 로컬에 복사한다.
Terminal 사용에 익숙치 않다면 https://pages.github.com의 GiHub for Windows나 GitHub for Mac탭의 내용을 참고토록 한다.
Hello World
root 디렉토리에 index.html을 생성하고 Hello World를 찍어보자.
Push
변경한 내용을 Remote 저장소에 Push 한다.
and you’re done!
브라우저에서 정상적으로 https://Username.github.io 에 접속되는지 확인 한다.
Hexo
Hexo는 Jekyll와 함께 대표적으로 정적 페이지를 쉽게 만들 수 있도록 도와주는 서비스이다. Hexo의 경우에는 npm을 통해 쉽게 설치가 가능하고 한 줄의 Command Line을 통해 Github에 바로 배포 할 수 있으며, Jekyll과 마찬가지로 다양한 플러그인과 테마를 지원하고 있다.
구성 요소 설치
- Node.Js - https://nodejs.org/en/
- Git - https://pages.github.com/
Hexo 설치와 블로그 생성
npm을 통해 hexo를 설치한다.
명령어 npm을 통해 hexo-cli모듈을 global하게 설치한다는 명령어이다.
Hexo로 init명령어를 입력하게 되면 지정된 블로그 명으로 Hexo로 알아서 기본적인 블로그를 만들어 준다. 그리고 생성된 블로그 경로로 이동하여 npm install 명령어를 통해 필요한 모듈을 설치한다. 모듈은 package.json에 명시되어 있다.
설정파일 업데이트
Command Line을 통해 Hexo를 설치하고 블로그 생성이 완료되면 root 디렉토리에 _config.yml이라는 설정파일이 생성 되는데 이 곳에 블로그의 공통적인 속성을 설정할 수 있다. 자세한 정보는 Hexo Documentation에서 확인할 수 있다.
Hexo 블로그 Github에 연동하기
Hexo로 생성한 블로그는 Github에 업로드해야지만 블로그에 접속하여 확인할 수 있다. Hexo를 사용하면 별도의 Git 명령어가 없어도 알아서 Github에 업로드 해준다. 그러기 위해서 Hexo와 Github간의 연결고리가 있어야 하는데 _config.yml을 통해 지정할 수 있다.
|
|
로컬에서 테스트
기본적인 설정이 완료가 되면 로컬에서 서버를 구동할 수 있다.
서버가 구동이 되면 [https://localhost:4000]https://localhost:4000 을 통해 브라우저에서 블로그에 접속할 수 있다.
Github에 배포하기
Hexo 서버가 정상적으로 구동이 되면 Github Page Repository에 손쉽게 배포가 가능하다.
hexo-deployer-git 플러그인 설치
Hexo에서 Github에 업로드하기 위해 필요한 npm모듈을 설치하자. 생성한 블로그 폴더 경로로 이동하여 명령 창을 실행하여 npm명령어를 입력하자.
__config.yml에 플러그인 설정
Hexo 설정을 통해 정적 리소스 생성하기
|
|
배포하기
|
|
생성과 배포를 동시 실행
Generate와 Deploy를 동시에 실행 할 수도 있다.
배포가 완료되면 브라우저에서 Username.github.io로 접속해 정상적으로 배포가 되었는지 확인한다.
Clean
간혹 정상적으로 배포가 되었음에도 페이지가 업데이트 되지 않는 현상이 있는데, 이 경우에는 페이지를 clean후에 배포하면 해결된다.
테마 적용
Hexo에서는 아래의 페이지에서 다양한 Theme가 적용된 페이지를 소개하고 있다.
https://hexo.io/themes/
대부분의 Theme 페이지에서는 Github 링크가 포함되어 있는데 Theme를 적용하기 위한 자세한 설명을 포함하고 있다. 현재 블로그는 hexo-theme-chiangmai 라는 Theme를 사용하고 있다.
https://github.com/stunstunstun/hexo-theme-chiangmai
Theme를 적용하기 위해서는 hexo-theme-chiangmai Github 페이지에서 자세한 내용을 확인 할 수 있다. 주의사항으로는 Theme를 적용하기 위해서는 아래와 같이 Repository 상태를 Clean한 이후에 재배포 해야한다.
포스트 작성하기
새 포스트 만들기
|
|
새 포스트를 만들면 root 디렉토리의 source/_posts 폴더에 Markdown 파일(.md)이 하나 생성되는데 Hexo에서는 Markdown 문서를 통해 포스트를 작성하게 된다.
문서 제목 수정
생성된 Markdown 문서에서 제목을 수정할 수 있다.
배포
|
|
Github Markdowm Guide
Markdown 문서가 생소하다면 아래링크를 참고한다.
https://guides.github.com/features/mastering-markdown/