로컬 jekyll 설치
설치 확인 및 에러
1
jekyll -v
Jekyll 을 로컬에서 실행하기 위해 먼저 version 확인을 시도했으나 아래와 같이, 버전 값이 나오기보다 장황한 설명이 이어졌다.
1
2
3
Ignoring eventmachine-1.2.7 because its extensions are not built. Try: gem pristine eventmachine --version 1.2.7
Ignoring ffi-1.15.5 because its extensions are not built. Try: gem pristine ffi --version 1.15.5
Ignoring http_parser.rb-0.8.0 because its extensions are not built. Try: gem pristine http_parser.rb --version 0.8.0
jekyll을 다시 설치하고자 해당 커맨드를 입력했으나 Gem::FilePermissionError가 발생했다.
1
gem install jekyll bundler
1
2
3
4
5
6
7
8
9
10
Ignoring eventmachine-1.2.7 because its extensions are not built. Try: gem pristine eventmachine --version 1.2.7
Ignoring ffi-1.15.5 because its extensions are not built. Try: gem pristine ffi --version 1.15.5
Ignoring http_parser.rb-0.8.0 because its extensions are not built. Try: gem pristine http_parser.rb --version 0.8.0
Ignoring racc-1.6.2 because its extensions are not built. Try: gem pristine racc --version 1.6.2
Fetching jekyll-4.3.4.gem
ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions for the /Library/Ruby/Gems/2.6.0 directory.
(base) ✘ kimjimin@Jimin-Kims-MacBook-Pro ~/Developer/jimin-kiim.github.io main ±
Gem::FilePermissionError
-> 권한 변경해줄까 생각했지만 그렇게 하기보단 안전하게 접근하는 게 맞다고 생각했고, 구글링을 통해서도 virtual environment 만들어서 그 안에서 처리하는 게 맞다는 솔루션을 확인했다.
gem:: file permission error 해결
1
2
brew update
brew install rbenv ruby-build
rbenv 설치 후 버전 확인하고
1
rbenv versions
.zshrc 파일을 열어 .rbenv 디렉토리가 있을 경우 실행하게 하는 코드 추가하고
1
2
3
[[ -d ~/.rbenv ]] && \
export PATH=${HOME}/.rbenv/bin:${PATH} && \
eval "$(rbenv init -)"
적용하고
1
source ~/.zshrc
에러 해결 확인 및 jekyll 설치
jekyll 과 bundler 설치 다시 시도
1
gem install jekyll bundler
하니 오류없이 설치됨을 확인했고
명시적으로 버전 확인
1
jekyll -v
해당 결과 역시 설치가 완료됐음을 확인했다.
로컬에서 jekyll 실행
1
bundle exec jekyll serve
해당 커맨드 실행시 로컬에서 실행이 되며 정상적으로 띄워졌다면
1
2
3
Auto-regeneration: enabled for '/Users/kimjimin/Developer/jimin-kiim.github.io'
Server address: http://127.0.0.1:4000/
Server running... press ctrl-c to stop.
위와 같은 안내 문구를 확인할 수 있다.