打造自己的論壇 - Discourse

前言

打造一個屬於自己的論壇,可以集結與自己有共同興趣的人一同討論,我相信是某些人的夢想。前幾天注意到,很多論壇的版型怎麼都長得很像,例如說 Cloudflare CommunityCfx.re Community 還有 Twitch Developer Forums。而經過我一查都出自 Discourse 這個軟體,他本身是免費的,但是也有供企業付費的版本。這篇文章就是記錄下如何安裝他。

前置準備

由於 Discourse 使用手動安裝非常複雜,因此我還是使用我相對不喜歡的 Docker 來完成我的需求。這台主機必須要有公網的 IP 位址,而在安裝過程中也需要將你的網域綁上 A 或是 AAAA 紀錄,不然過程中有出錯的機率。你也需要準備一個郵件伺服器,也就是 SMTP,這將會用來讓 Discourse 發送驗證、通知信件。

安裝步驟

將機器安裝上 Git 以及 Docker。

sudo apt-get install -y git docker.io

接下來的步驟我們要使用管理員權限會比較方便一些。

sudo -s

使用 Git 來 clone 專案,並將該目錄底下的 containers 資料夾權限設為 700

git clone https://github.com/discourse/discourse_docker.git /var/discourse
cd /var/discourse
chmod 700 containers

完成後,執行 setup 來安裝。

./discourse-setup

當他詢問你 Hostname 時,你需要填入你欲使用的網域名稱,並且到你的網域添加紀錄。

001.jpg

而如果你沒有完成綁定的話,或是你使用 Cloudflare,可能會出現以下畫面。

002.jpg

不過這不要緊,我們先去編輯一些檔案的 config 再回來重新執行安裝即可。

編輯配置

我們需要編輯 containers/app.yml 這個檔案。

sudo vim /var/discourse/containers/app.yml

找到下圖內容的位置,我們需要編輯他。DISCOURSE_HOSTNAME 填入你的網域名稱,DISCOURSE_DEVELOPER_EMAILS 填入你的電子郵件, DISCOURSE_SMTP_ADDRESS 填入你的 SMTP 位址,DISCOURSE_SMTP_USER_NAME 填入 SMTP 發送帳號,DISCOURSE_SMTP_PASSWORD 填入 SMTP 發送密碼。

003.jpg

當資訊改完之後,使用以下命令來重新觸發安裝。

./launcher rebuild app

他會花上一些時間下載以及安裝,但是這個過程中都是自動的,所以你只需要等他完成的那刻就可以使用囉。

開始使用

接著你可以直接打開你的網站,你應該可以看到歡迎畫面。點選 Register 來註冊管理員帳號。

004.jpg

管理員的帳號沒辦法用打的,只能用選的。這也是我們剛剛 Config 改的部分,所以記得一定要去改。

005.jpg

接著他會使用我們剛剛給他的 SMTP 伺服器來寄送驗證信,去信箱就可以啟動這個管理員帳號囉。

006.jpg

收完驗證信之後,接下來我們要幫這個網站取個名字,以及所要使用的語言。

007.jpg

這邊有一些功能設定是針對使用者的,這個可以依照自身需求做調整。

008.jpg

你的網站準備好囉,你也可以選擇繼續設定,或是點 Jump In 直接進入網站。

009.jpg

開始使用!盡情摸索這個網站能帶來的功能及效益。

010.jpg

結語

這是一個很多業者都使用的論壇軟體,但我相信他能帶來的價值絕對不只是商業上的,具有相同興趣的同好也可以使用他暢聊專業項目,我相信也會非常愉快!