슬러거(Sluuger) 설치 매뉴얼
스프링노트 기반의 블로그 서비스인 슬로거(Slugger)의 설치 매뉴얼입니다. 작성자의 Mac환경과 호스팅 환경에서만 테스트 했으므로 부족할 수 있습니다. 문서 작성에 함께 참여하고자 하거나, 문서의 부족한 부분과 오류에 대해서는 작성자의 미투데이에 댓글 부탁드립니다. 편의상 존칭은 생략합니다.
자신의 컴퓨터에서 슬러거 동작하기
슬러거 다운로드 받기
서브버전 저장소로부터 슬러거를 체크아웃 받는다. 서브버전 클라이언트를 직접 설치해서 아래의 커맨드를 입력하거나 eclipse와 같은 IDE를 통해 체크아웃 받으면 된다. 서브버전 사용법은 본 문서의 범위를 벗어남으로 설명하지 않는다.
- svn checkout svn://rubyforge.org/var/svn/springnote/slugger
스프링노트/ 미투데이 키 발급 받기
TBD
블로그 관련 페이지 편집하기
블로그 엔트리 페이지 만들기 (공개글 목록 구성하기)
블로그 엔트리 페이지는 블로그에 공개하고자 하는 스프링노트 글 목록을 관리하는 페이지이다. 새로운 페이지를 생성하고 최신글이 위쪽에 위치하도록 아래 그림 처럼 링크를 생성한다. 작성한 페이지의 제목은 무엇이든 상관없으며 페이지의 고유번호를 기억한다. 페이지 주소가 http://pragmatic.springnote.com/pages/397667의 경우 397667이 이 페이지의 고유번호이다. 페이지의 고유번호는 블로그 설정 정보를 입력할 때 사용된다.
사이드바 페이지 만들기
자신의 스프링노트에서 블로그 사이드바로 표시될 새로운 페이지를 만든다. 사이드바는 블로그의 메인 영역이 아니므로 글을 작성할 때 폭이 너무 넓지 않도록 주의한다.
아래와 같이 블로그 메뉴로 공개하고 싶은 항목들을 나열하면 된다. 엔트리 페이지와 마찬가지로 페이지의 고유번호를 기억한다.
프로퍼티 페이지 만들기
프로퍼티 페이지는 스프링노트에서 작성된 글과 미투데이에서 작성된 댓글을 연결시켜주기 위한 정보를 저장하는 페이지이다. 페이지와 댓글의 연결 정보는 JSON 형식으로 기록되며 여기서 필요한 작업은 단순히 이런 정보가 저장되기 위한 빈 페이지를 생성하고 위에서와 같이 이 페이지의 고유번호를 기억하는 것이다. 정보는 슬러거가 생성하며 사용자가 직접 편집할 필요가 없는 페이지이다.
설정파일 편집하기
스프링노트에 접근하기 위한 인증 정보를 편집한다. config 폴더의 springnote.yml.example 파일에서 example을 제거하고 위에서 발급받은 애플리케이션 키, 사용자 키와 자신이 키를 발급받은 오픈아이디를 입력한다.
-
# config/springnote.yml
app_key: 0ffb2a7cd1d3301d7f101a45dce1eb79b89c5112 # 인증센터를 통해 발급 받은 애플리케이션 키 (예제로 입력된 데이터)
-
user_openid: http://pragmatic.myid.net/ # 스프링노트 사용자로 등록한 자신의 오픈 아이디
-
user_key: 0cdb85e7e2e21e2321acefa8bc7a739db235d312 # 인증센터를 통해 발급 받은 사용자 키 (예제로 입력된 데이터)
미투데이 댓글 서비스를 사용하기 위한 인증 정보를 편집한다. config 폴더의 me2day.yml.example 파일에서 example을 제거하고 위에서 발급받은 정보를 입력한다. post용 사용자와 comment용 사용자 두 명의 사용자 정보를 입력해야 한다. 미투데이에 포스트하는 아이디와 해당 포스트에 달린 댓글을 작성하는 아이디를 구분하는데 사용되며 Comments To Me 기능을 활용하기 위함이다.
-
# config/me2day.yml
-
app_key: 908e39812da5a00a2bfbd3dd14eb9a24 # 미투데이 애플리케이션 키 (예제로 입력된 데이터)
post:
user_id: pragmatic # 블로그 글에 해당하는 미투 댓글 페이지를 생성하기 위한 사용자 아이디
user_key: 42162483 # 위 사용자 아이디의 사용자 키 (예제로 입력된 데이터)
comment:
user_id: sakim # 블로그를 통해서 사용자가 입력한 댓글을 생성하기 위한 사용자 아이디
user_key: 32143501 # 위 사용자 아이디의 사용자 키 (예제로 입력된 데이터)
마지막 설정 파일은 블로그에 대한 각종 정보를 처리하기 위한 파일이다. config 폴더의 settings.yml.example 파일에서 example을 제거하고 편집한다. 각 항목 옆의 주석을 보며 작성하면 쉽게 작성할 수 있을 것이다. 주의할 점은 현재는 home_url의 마지막에 '/'를 입력하면 미투데이 댓글에 '//'의 형식으로 링크가 생성되므로 반드시 '/'를 제거하고 적는다. '/'의 포함여부와 관계없이 작동하도록 개선될 필요가 있다.
- # config/settings.yml
-
index_page_id: 397672 # 블로그에 공개할 글의 목록을 관리할 엔트리 페이지의 고유번호
side_page_id: 397667 # 블로그 사이드바에 해당하는 페이지의 고유번호
property_page_id: 397702 # 블로그 글/미투데이 댓글을 연결시켜주기 위한 정보를 남겨두기 위한 프로터티 페이지의 고유번호
list_per_page: 2 # 한 페이지에 공개할 블로그 글 개수
list_per_page_atom: 5 # ATOM 문서에 공개한 글 개수 (RSS로 공개할 글 개수)
title: Pragmatic.kr # 사이트 제목sub_title: Develop with pleasure! # 부제목
site_description: 실용주의를 꿈꾸며... # 사이트 설명
springnote_domain: pragmatic.springnote.com # 자신의 스프링노트 도메인 주소home_url: http://www.pragmatic.kr # Slugger가 배포될 홈페이지 주소 (주: http://www.pramgatic.kr/ 의 형식으로 입력하면 안됨)
- feed_path: http://www.pragmatic.kr/pages.atom # RSS 주소
- google_analytics: UA-123456-7 # Google Analytics의 _uacct 고유 번호 (Optional)
- lemonpen_sid: # 블로그에 레몬펜 서비스를 달아주려면 설정한다.
Google Analytics는 사용자의 웹 사이트의 방문자 수, 방문자의 웹 브라우저 환경, 지역 분석 등과 같은 통계 정보를 제공해준다. 이러한 정보를 제공받기 위해서는 아래와 같은 형식의 코드를 웹 페이지에 삽입해야 한다. 사용자의 웹 사이트를 식별하기 위한 코드가 _uacct 정보이고 슬러거는 이 정보를 입력하면 분석 정보를 자동으로 삽입해준다.
- <script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
</script>
<script type="text/javascript">
_uacct = "UA-123456-7";
urchinTracker();
</script>
필수 잼(GEM) 설치하기
README 파일에서 확인할 수 있듯이 슬러거는 기본적으로 다음과 같은 환경을 필요로 한다.
- EdgeRails (>= rev 7247): 루비 온 레일스의 최신 개발버전. REST 클라이언트인 ActiveResource를 사용하기 위해서 필요하다.
- springnote_resources: 스프링노트 자원을 이용하기 위해서 필요하다. ActiveResource를 이용한다.
- rme2day: 미투데이 댓글을 이용하기 위해서 필요하다.
- hpricot
- rest-open-uri: 루비의 기본 라이브러리인 open-uri는 GET 메소드만 지원하므로 GET, POST, PUT, DELETE와 같은 메서드를 사용하기 위해서 필요하다.
EdgeRails와 rme2day는 이미 슬러거 다운로드에 포함되어 있으므로 추가로 설치하지 않아도 된다. springnote_resources도 설치되어 있지만 다시 설치하는 걸 권장한다.
먼저 springnote_resources 젬을 설치한다. (주: 동일한 명령어라 할지라도 때때로 젬을 찾아오지 못하는 경우가 있다. 명령어를 다시 수행하면 해결된다.)
- gem install springnote_resources # mac 사용자라면 앞에 sudo를 입력하여 root 권한을 획득해야 한다.
설치 과정에서 의존하고 있는 젬인 hoe를 설치할지 여부를 묻는다. Y를 선택한다.
정확하게 동일한 인스톨 명령을 수행했음에도 Gem을 찾아오지 못하고 에러가 발생한 경우와
동일한 명령어를 다시 수행해서 제대로 인스톨하고 있는 화면
나머지 두 개의 젬도 동일한 방식으로 설치한다. 설치과정 중에 플랫폼에 따른 설치 옵션은 ruby 전용 최신 버전을 선택하면 된다. 예: 3. hpricot 0.6 (ruby)
- gem install hpricot
- gem install rest-open-uri
이제 자신의 컴퓨터에서 슬러거를 동작하기 위한 준비 가정은 모두 끝났다.
애플리케이션 구동하기
슬러거의 최 상위 디렉토리에서 서버를 동작한다.
- ruby script/server # 앞에 ruby를 붙여주는건 windows 사용자에게만 해당한다.
서버가 정상적으로 실행됨
서버가 정상적으로 실행되었으니 위에서 편집한대로 블로그 화면이 나오는지 확인해보자. 웹 브라우저를 열어서 아래의 주소를 입력한다.
- http://localhost:3000
이제 근사한 블로그가 생겼다. 위에서 설정한 RSS 주소를 통해 Feed가 제대로 동작하는지, 댓글이 제대로 동작하는지, 미투데이에 댓글이 어떤식으로 작성되는지 확인해보자.
슬러거 실행화면
레일스 호스팅에 슬러거 배포하기
레일스 애플리케이션을 배포하는 작업은 호스팅 환경에 따라서 다양하며 다양한 환경에 대해 다루는 건 본 문서의 범위를 벗어난다. 하지만, 사용자가 젬을 자유롭게 설치할 수 있는 경우가 드물고 서버의 운용 정책에 따라서 잼의 버전이 결정될 수 있으므로, 슬러거만을 위한 젬 구성하기 등에 대해서는 공통적으로 적용할 수 있는 사항이므로 설명한다.
슬러거 전용 젬 구성하기
TBD
루비 온 레일스 호스팅
TBD
History
Last edited on 12/06/2008 17:13 by 김성안
Comments (0)