설치 과정에 쓰인 명령은 다음과 같다.
npm install -g gatsby-cli
sudo npm install -g gatsby-cli
gatsby new "blog" "https://github.com/gatsbyjs/gatsby-starter-blog"
git init
git add *
git commit -m "Gatsby"
git remote add origin https://github.com/th25jang/th25jang.github.io
git checkout -b 'main'
git push origin main
git config --global user.name "th25jang"
git config --global user.email "th25jang@gmail.com"
git push origin main
Username for https://github.com :th25jang
Username for https://github.com :
git push origin main(실패)
git push -u origin main --force(강제로 수행)
npm i gh-pages
npm run deploy설치 내용은 gatsby-cli 설치 후 "blog" 디렉토리에 gatsby-starter-blog 테마 파일을 생성한 후 이를 github에 upload하는 내용이다. upload시 id와 pwd를 입력해야 하는데, pwd가 사용자암호가 아니라 github에서 생성한 키를 입력 것이어서 과정이 조금 길어졌다.
생성한 블로그를 수정한 후 적용결과를 보기 위해서는
gatsby develop를 이용하여 localhost에서 확인할 수 있다.
블로그에 수정을 하는 과정은 개발을 하는듯한 느낌을 주게 한다.
전체적인 구성을 설정하는 /gatsby-config.js 파일은 자바스크립트이고,
포스트를 쓰기 위한 md 파일은 /content/ 아래에 존재하는데 작성과정이
html과 유사하기 때문이다.
실제로 구성 디렉토리는 리액트 프로젝트의 전형적인 구성을 보여준다.
만약 다른 서버로 이전을 고민한다면 기본적으로 /gatsby-config.js와 /content/만 고려하면 문제가 없을 것 같다. 테마를 달리적용하고자 할 때도 비슷한 작업이 필요할 것 같다.
블로그를 수정한 후 깃헙에 올리는 과정은 아래와 같다.
git push origin main npm run deploy
깃헙에 블로그를 올렸으면 도메인을 바꾸고 싶을텐데, 무료 도메인으로 '내도메인.한국'을 사용하였다. 깃헙에서는 letsencrypt를 통하여 무료 보안연결을 제공하는데 선택한 하위도메인 '.kro.kr'이 문제를 일으켜서 'r-e.kr'로 바꾸어야만 했다.
갯츠비에 블로그를 올리면서 느낀점은 블로그에 글을 쓴다기 보다 글에 필요한 html을 작성하는 것과 같다. 또한 블로그의 틀을 바꾸는 작업은 graphql을 이용하여 리액트를 프로그래밍 작업과 같다. 컨셉이 블로그 작성을 위한 편리한 프로그래밍이고 하다보면 이게 뭐든지 할 수 있겠다라는 생각이 들면서도 테마가 몇개 안된다는 이유가 납득이 된다. 아마 보다 발전이 되면 프레임워크 성격이 강해지고 보다 테마 작성에 편리한 방향으로 발전할 듯 싶다. 여튼 db없이 블로그를 작성할 수 있다는 것이 중요하다. db에 대한 거부감이 많은 나에게는 안성맞춤이라는 생각이 든다.
두 가지 기여할 수 있는 부분도 있겠다는 생각을 하게 된다. 하나는 한국적인 테마를 만들어 배포하는 것이다. 상용화도 가능할 듯 한데 자신의 블로그를 발전시키다 보면 아이디어 나오게 될 것 같다. 또 하나는 포스트를 쓰는 프로그램을 개발하는 것이다. 찾아보면 이미 만들어져 있을지도 모르겠다.
아래글은 블로그를 개발하면서 해야 할일을 정리해 놓아서 유용할 것 같다.