Post

Synology docker에 jekyll install하기

시놀로지에 jekyll을 깔아보자

Synology docker에 jekyll install하기

Synology docker에 jekyll install하기

하룻밤의 삽질기

이번에 새로운 블로그를 만들면서 했던 삽질기를 올립니다.

보통은 github를 사용해서 jekyll을 구축하는 경우가 많은 거 같은데요,

저는 Synology nas의 docker를 사용해서 jekyll을 인스톨 하는 방법을 사용했습니다.

아무래도 개인 서버를 이용해보고 싶었고, github가 익숙하지 않다는 문제도 있었습니다.

기본적인 셋업은 Synology nas에서 docker를 이용한 jekyll 사용하기 · Storm 의 내용을 참고하였으며,

참고한 내용에서 이해가 안 가는 내용을 추가합니다.

그냥 jekyll/jekyll 레지스트리를 받아서 실행한다면 아마 무한재시작에 걸리게 되니 아래와 같은 사전 작업이 필요합니다.

  1. jekyll/jekyll 이미지 다운 후 어떻게 해야 하는가

    원본 글에는 “원본이 위치한 경로의 접근 권한을 everyone으로 읽기쓰기가 가능하도록 먼저 설정합니다.” 라고 되어있는데,

    이 말의 의미는 공유 폴더의 접근 권한을 everyone 읽기/쓰기 가능하도록 해주라는 겁니다.

    1. docker에서 jekyll 레지스트리를 다운 받습니다.

    jekyll01

    1. jekyll을 구성할 홈 폴더를 하나 만들어 줍니다. 저는 /docker/jekyll_home 폴더를 만들었습니다.

    2. File Station에서 jekyll_home 폴더 우클릭 후 속성에 들어가서 권한에서 생성을 눌러줍니다.

    3. 아래와 같이 설정해 줍니다.

    jekyll02

  2. gemfile을 어떻게 얻는가

    잘은 모르겠지만, 아마도 jekyll이 ruby기반이라 gemfile이라는 파일을 쓰는 거 같은데, jekyll 레지스트리에는 관련 내용이 없어서 좀 삽질을 했습니다.

    결론은, jekyll의 theme를 인터넷에서 하나 구해서 풀어보면, 거기 안에 gemfile이 있습니다.

    1. jekyll의 theme 하나를 구해서 jekyll_home 폴더에 풀어줍니다.
  3. Updatding & Caching

    명령어를 실행해야 하는데, docker 메뉴에는 이런게 없습니다. 이건 ssh로 `synology’ nas 에 접속해서 처리해야 하는 부분입니다.

    설치 전에 미리 셋업해야 하는 부분인데, ssh 접속은 구글링 하면 잘 나오니 따라하시면 되고,

    jekyll_home 디렉토리 아래 /vendor/bundle 폴더를 생성하고 ssh 접속 상태에서 아래 명령어를 복사&붙여넣기 해서 실행하면 됩니다.

    참고로 안될 때는 sudo를 붙이세요. sudo docker run ~~~

1
2
3
4
5
docker run --rm \
  --volume="/volume#/docker/jekyll_home:/srv/jekyll" \
  --volume="/volume#/docker/jekyll_home/vendor/bundle:/usr/local/bundle" \
  -it jekyll/jekyll \
  bundle update

여기서 volume#은 nas의 하드디스크 볼륨 번호입니다. ssh로 접속해서 docker 디렉토리를 어느 볼륨에 만들었는지 확인 후 맞는 번호를 넣으시면 됩니다.

  1. Build

    내용은 3번과 같고, 링크된 가이드의 명령어대로 이번에는 bundle update 가 아닌 jekyll build 명령어를 써줍니다.

  2. Docker 이미지 실행(설치)

    이 내용은 크게 어려운 부분이 없어서 링크의 가이드 참고하시면 됩니다.

위 내용대로 세팅 하면 http://Nas IP(혹은 URL):4000 으로 접속 시 홈페이지가 나타나는 것을 볼 수 있을 겁니다.

This post is licensed under CC BY 4.0 by the author.