vTaiwan架站指南

最後編輯:2015-03-10 建立:2015-01-20 歷史紀錄

 

AUDREY TA機器:

雨蒼 林https://github.com/discourse/discourse_docker

discourse,以docker安裝discourse,預設就有提供json API

  • AUDREY Tcontainers/app.yml

DISCOURSE_ENABLE_CORS: true

DISCOURSE_CORS_ORIGIN: '*'

 

CloudFlare Rules:

 

  • 雨蒼 林在管理員->API->產生金鑰
  • AUDREY T開一個總帳號(如 sdparty),授予板主、管理員、信任等級四
  • 首頁按「新分類」,安全設定如下:

 

  • 新分類的預設文章作者,如果要改成系統用戶,可以按右上方的扳手按鈕,按「選取要移動的文章」、「選取全部」、「變更擁有者」即可。

 

基本設定裡,將子分類設為固定順序:

 

取得分類的 ID:

 

 

B機器:

雨蒼 林靜態網站機器,以angular串起gitbook及discourse

https://github.com/g0v/vtaiwan.tw

 

AUDREY T小字典:

在 Google Spreadsheet 裡,複製 vTaiwan 小字典(File -> Make a Copy -> Move to Drive),將頁籤名稱改成與討論議題同名,再按 Publish:

 

 

 

GitBook 建置(本機端):

 

在 package.json 裡,spreadsheet ID 從 published sheet 處取得,再加上頁籤序號到「republish:lexicon」即可。

 

  • sudo npm i -g gitbook
  • npm i
  • npm run republish:lexicon
  • gitbook install
  • env API_KEY="discourse API key" gitbook build
  • npm run republish:lexicon

 

在 book.json 裡,parent_category_id 由上述「分類 ID」取得:

  • "discourse": {
  • "url": "https://talk.sdparty.tw/",
  • "api_key": "",
  • "api_username": "sdparty",
  • "parent_category_id": 5,
  • "parent_category_name": "問題討論:新經濟"
  • }

 

 

雨蒼 林patch pg 以支援中文全文檢索

 

在discourse機器上,進入app內

  • AUDREY Tsu postgres
  • psql
  • update pg_database set encoding = pg_char_to_encoding('UTF8') where datname = 'discourse' AND encoding = pg_char_to_encoding('SQL_ASCII');

 

再回到外層,launcher rebuild app 即可。(pull request 已送回上游)

 

雨蒼 林patch onebox gem 以支援 FB、PTT 貼文

 

在discourse機器上,進入app內

 

修改 /var/www/discourse/Gemfile

 

 

  • gem 'onebox'

 

修改為

 

 

在/var/www/discourse內執行

 

  • bundle install --no-deployment
  • AUDREY Tbundle update onebox

 

雨蒼 林修改 /var/www/discourse/config/unicorn_launcher

 

在檔案上方加入:

 

  • export FACEBOOK_APP_ID=""
  • export FACEBOOK_APP_SECRET=""

 

最後,重開機器即可!