Skip to content

[WordPress] 使用 Linode 主機架站筆記

2021 年 07 月 28 日,在我的個人網站 Clay-Technology World(就是你們眼前看到的這個網站)滿兩週年時,我腦海中突然閃過了要架設第二個網站的念頭。

這是我很久以前就計畫要做的一件事,只是這個計畫突然在我腦海中鮮活了起來、督促我開始做事、暗示著我『現在難道不是最好的時機嗎?』

於是這篇文章就誕生了。

跟兩年前對架站仍缺乏認識的我相比,這次我打算使用 Linode 主機來架站,也是因為我的個人網站一直架在共享主機(shared host),那速度已經讓我差不多感到厭煩了,於是乎這次就選擇了所謂的 VPS(Virtual Private Server)來架新的網站。

而且這個網站由於是全中文的、目前也沒有規劃要有第二種語言,所以伺服器位置應該會距離台灣越近越好。

哦對了,雖然標題上已經寫得很清楚了,但還是再次聲明,這篇筆記的主題內容是以 Linode VPS 主機來架設 WordPress 網站。

希望這篇筆記能給需要的人一些參考。


Step 1: 購買 VPS 主機

首先自然是去 Linode 購買主機:https://www.linode.com/


註冊好帳號後,你應該可以前往 Linode 管理頁面了。


你可以選擇你要購買的主機,在這裡,因為我要建立的網站主要的目標客群還是台灣人,所以選擇了大家最推薦的日本機房;如果你的目標客群在其他地方,當然你就該選擇離你的目的地越近的機房越好。

而我選擇的是最便宜的 5 美金/Month 方案。

這是因為我聽朋友說基本上可以無痛升級,所以就先選了最便宜的方案嘗試看看。

購買好主機、確認開機後,我們應該可以看到主機的 IP 地址。

打開終端機,使用 ssh root@your_ip 後再輸入你設定的密碼,應該便能連上你所購買的主機。

不過 IP 地址最重要的是要將接下來所購買的網域指向它。


Step 2: 購買網域

我自己是去 GoDaddy 購買網域的,一口氣買了兩年,在網路上找一下也可以找到折扣代碼。

不過,可能得看點廣告解鎖就是了。(個人經驗)

購買完網域後,我們接著設定 DNS 的 A 紀錄(A Record)。這是為了讓我們所購買的網域能夠指向我們所架設網站的主機。

設定步驟如下:

  1. 登入 Godday 網域控制中心
  2. 點選網域,進入網域設定頁面
  3. 找到管理 DNS 按鈕
  4. 修改目前的 a 紀錄
    1. 主機:填入 @ 即可,代表指向網域名稱
    2. 指向:填入剛剛拿到的 Linode 主機 IP 地址
    3. TTL:預設 1 小時就很 ok
  5. 儲存

接著差不多過幾個小時後設定才會生效,這裡我們先繼續下一步動作。


Step 3: 登入遠端電腦

登入遠端電腦,更新套件庫,建立一般使用者帳號,並加入管理員權限。

ssh root@your_ip
apt update
adduser USERNAME
adduser USERNAME sudo


接著我們應該禁止遠端登入 root 帳號、設立防火牆,不過再繼續紀錄下去內容會變得太過龐大,這裡就先跳過。

總之先切成你所建立的帳號開始使用這台主機吧!

順帶一提,之後使用指令操作這台主機時,如果有缺乏的套件,那很正常。

畢竟這是新的主機,所以缺的套件裝上去也就是了。本文就不一一贅述。


Step 4: 部署 WordPress

Step 4-1: 安裝 docker-compose

在這裡我們使用 docker-compose 來快速部署。

首先在遠端主機安裝 docker-compose。(如果已經安裝則可跳過此步驟)

sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose --version


Output:

docker-compose version 1.29.2, build 1110ad01


如果能成功顯示版本號,則代表已經成功安裝。


Step 4-2: 安裝 WordPress

建立個資料夾,並設定部署腳本:

mkdir my_wordpress
cd my_wordpress
vim docker-compose.yml


在 docker-compose.yml 中寫下:

version: "3.9"
    
services:
  db:
    image: mysql:5.7
    volumes:
      - db_data:/var/lib/mysql
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: somewordpress
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wordpress
      MYSQL_PASSWORD: wordpress
    
  wordpress:
    depends_on:
      - db
    image: wordpress:latest
    volumes:
      - wordpress_data:/var/www/html
    ports:
      - "80:80"
    restart: always
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_USER: wordpress
      WORDPRESS_DB_PASSWORD: wordpress
      WORDPRESS_DB_NAME: wordpress
volumes:
  db_data: {}
  wordpress_data: {}


Step 4-3: 執行部署腳本

my_wordpress 資料夾中執行:

sudo docker-compose up -d


如果你沒有看到報錯訊息(如果缺乏 Docker,可以參考這篇文章安裝:[Linux] Docker 基本介紹與建立步驟筆記),那麽打開瀏覽器輸入 IP 地址,這時若是看到下列 WordPress 安裝畫面,則代表可以開始架設你的網站了!


References


Read More

Tags:

4 thoughts on “[WordPress] 使用 Linode 主機架站筆記”

  1. 感謝分享,照著步驟很輕易就完成了。
    另外想請問,ssl是怎麼安裝的呢?有機會分享嗎?謝謝

    1. SSL 的部分我是透過 Cloudflare 幫我完成的。
      或許可以參考:https://clay-atlas.com/blog/2021/05/08/wordpress-cn-cloudflare-cdn/

Leave a Reply