[教學] 使用 Openshift (v3) 架設 WordPress

之前有和大家分享過在 Openshift (v2)上架設 WordPress 的方法,改版之後,就沒那麼容易了

[教學] 在 Openshift 上架設 WordPress+自訂域名

比起第二版的 WordPress 部署方式,第三版目前尚無自動化安裝腳本,安裝起來稍微複雜些。不過,你不用擔心,以下的教學都將採用圖形介面操作,假如真的遇到問題,再去研究文字指令怎麼使用,文末也附上遇過的問題與大家分享。

溫馨提示:不推薦拿來做為正式用途,因為新版平台類似 Heroku,有 30分鐘休眠限制,且容器內部 IP可能會因為重新啟動而變更,您需要自行修改 YAML 檔,避開這樣的問題。

準備開始

安裝開始前,你需要知道 Openshift (v3) 底層是容器,使用 Kubernetes 進行管理,在這樣的架構下,每個應用程式被獨立開來,專注做自己的事,當問題發生的時候,可以個別重新啟動,或是更進一步的診斷。

那麼我不懂容器,不懂 Kubernetes,我只想裝 WordPress,可以嗎?

可以的,你應該知道 WordPress 是由 PHP 語言與 MySQL 資料庫搭建而成的部落格系統,需要有個 PHP 環境跑 WordPress ,再加上 MySQL資料庫儲存我們的資料

我們使用 Openshift 提供的免費資源來架設,他提供 1GB 記憶體與 1GB 儲存空間,運行速度比起第二版快很多,但是有資源休眠的限制 (Resource Hibernation),假如你的應用程式 30 分鐘內沒有動靜,那麼就會進入休眠狀態,而且每 72 小時,必須要休眠 18 小時。

請支持《傑瑞窩在這》原創文章。原文標題:[教學] 使用 Openshift (v3) 架設 WordPress,原文網址:https://jerrynest.io/openshift-v3-wordpress/

Step1 註冊 Openshift (v3) 帳號

進入 Openshift 註冊帳號,就不贅述囉

https://manage.openshift.com/
o3s2 - [教學] 使用 Openshift (v3) 架設 WordPress

Step2 建立 Openshift 專案

登入主控台後,新增一個專案

os newpj0 - [教學] 使用 Openshift (v3) 架設 WordPress

輸入你的專案名稱,需要是獨一無二的喔,無法用別人用過的名字

os newpj - [教學] 使用 Openshift (v3) 架設 WordPress

Step3 建立 MySQL 應用程式

新增專案後,會直接導向這個「新增應用程式」頁面,或是點擊導覽列中的「Add to Project」

因為 Openshift 官方有提供 MySQL 映像檔,我們就直接拉過來用,所以直接在「Deploy Image」中,選擇「Openshift」,接著選 「MySQL 5.7」。名字取個看得懂的就可以了,例如我給他起個名字叫「mysql」

mtsql22 - [教學] 使用 Openshift (v3) 架設 WordPress

往下滑,有個環境變數設定,要自己加上這些參數 (帳號、密碼與資料庫名稱),以免待會資料庫跑不起來。

MYSQL_USER 使用者名稱
 MYSQL_PASSWORD 使用者密碼
 MYSQL_DATABASE 資料庫名稱

這需資訊要記住唷,待會安裝 WordPress 會用的到

mtsql3 - [教學] 使用 Openshift (v3) 架設 WordPress

完成之後,看看你的主控台上是不是出現 MySQL 了呢

mtsql23 - [教學] 使用 Openshift (v3) 架設 WordPress

正常應該是藍色圈圈 (預設 1 pod),如果出現紅色或是跳出警告訊息,請看下方疑難排解


Step4 建立 WordPress 應用程式

接著,我們透過 GitHub 上的程式碼來部署 WordPress。點擊導覽列中的「Add to Project」
這次我們選擇「Browse Catalog」標籤,並點擊 「PHP」執行環境

php0 - [教學] 使用 Openshift (v3) 架設 WordPress

選第一個,Bulids source code

php1 - [教學] 使用 Openshift (v3) 架設 WordPress

起個名字之後,貼上下方 WordPress 的 GitHub位置。之後系統就會去拉原始碼,自動建立應用程式

https://github.com/wordpress/wordpress
php2 - [教學] 使用 Openshift (v3) 架設 WordPress

給他點時間建置,之後你就能在主控台看到兩個應用程式。點擊 WordPress 右方的網址,就能進入你的網站囉 (如果打不開,請再給他點時間做  routing)

wp55 - [教學] 使用 Openshift (v3) 架設 WordPress

Step5 安裝與設定 WordPress

接下來就是設定資料庫資訊了,讓 我們的wordpress找的到 MySQL。點擊「Let’s Go」

os3 wp1 - [教學] 使用 Openshift (v3) 架設 WordPress

請輸入剛剛在環境變數中給的帳密以及資料庫名稱,資料庫主機 (Database Host) 請填 MySQL 應用程式的內部 IP 位置,而 Table Prefix 不用更動

wp connect - [教學] 使用 Openshift (v3) 架設 WordPress

那麼,MySQL 應用程式的內部 IP 位置在哪裡呢?

Application -> Pods -> mysql-xxxxx

在狀態表中可以看到內部 IP 位置,把這個 10.xxx.xxx.xxx 複製過去就對了

pod - [教學] 使用 Openshift (v3) 架設 WordPress

接著就是傳統的安裝步驟了,輸入部落格帳密、設定電子郵件等等

os3 wp4 - [教學] 使用 Openshift (v3) 架設 WordPress

完成囉

wp445 - [教學] 使用 Openshift (v3) 架設 WordPress

疑難排解

1. 甚麼是 Kubernetes

請參考相關介紹與教學文章

2. MySQL 應用程式架設不成功

假如架設出現問題,出現紅色圈圈,就要檢查紀錄訊息了,好在網頁介面可以直接看

mysql failed - [教學] 使用 Openshift (v3) 架設 WordPress

請進入以下位置查看原因。好比下圖是忘記設定環境變數,出現的提示訊息

Application -> Pods -> mysql-xxxxx -> Logs
openshift3 error2 - [教學] 使用 Openshift (v3) 架設 WordPress

這部分需要自行修改 Deployment 中的 YAML 設定檔,重新部署。假如砍掉重練,只透過圖形介面沒辦法刪掉現有的部屬設定,要安裝 Openshift的 CLI 工具,透過 oc 指令修改。


參考資料

如果您覺得這篇文章有幫助,歡迎按個讚或分享出去唷:

樂於分享的軟體工程師,曾在新創與大型科技公司實習,獲得黑客松競賽冠軍,擔任資安研討會講者。長期熱衷於資訊安全、雲端服務、網路行銷等領域,希望將科技知識分享給更多人。內容轉載請來信:jlee58tw@gmail.com

18 個回應

  1. 想問一下V3的版本 要如何自訂域名@@?
    然後能用SSH嗎?

    • Jerry

      Hi Beneb,

      你可以依照我文章中的說明檢查看看有沒有錯誤訊息
      我想應該是有設定沒有做好
      試試看吧~

  2. 請問如果已經在Openshift V2版有wordpress網站,該如何搬家到新版V3網站?
    是否有快速的wordpress搬家法?
    似乎近期要刪除V2了…
    謝謝

  3. 感謝大大的教學 , 解說得非常詳細!!!
    想問一下 如何在Openshift (v3)綁訂自訂網域?

發表回應