【 Cloud 】部署 Ghost Blog App 到 Fly.io 雲端平台

【 Cloud 】部署 Ghost Blog App 到 Fly.io 雲端平台
Photo by Nathan Anderson / Unsplash

內容

  • 學習目標
  • 前置準備作業
  • 專案最終目錄結構
  • 部署 Ghost Blog App 到 Fly.io

學習目標

  • 如何部署 Ghost Blog AppFly.io 雲端平台

前置準備作業

專案最終目錄結構

└── ghost-blog-sample
    └── fly.toml → 執行完 flyctl 指令後會產生

部署 Ghost Blog App 到 Fly.io

Step 1. 透過 flyctl 登入到 Fly.io

  • 請在終端機輸入下方指令

    flyctl auth login
    

    ---2022-08-31---10.16.13

    ---2022-08-31---10.16.57

    ---2022-08-31---10.17.56


Step 2. 建立 App

  • 請在終端機輸入下方指令

    flyctl launch --image=ghost:5.12.0-alpine --no-deploy
    

    ---2022-08-31---3.02.50


Step 3. 建立 1 GB 儲存空間以存放 Blog 內容

  • 請在終端機輸入下方指令

    • 空間名稱 ( VOLUME-NAME ) 只能為字母、數字與底線,本範使用 ghost_data
    flyctl volumes create VOLUME-NAME --size 1
    

    ---2022-08-31---3.04.18


Step 4. 修改 fly.toml 檔案

  • 修改資訊如下

    • 修改 [env] 區塊中的 url 為唯一可識別的網址
    • 新增 [mounts] 區塊到 [[services]] 區塊前其內容如下
      [mounts]
        source="ghost_data"
        destination="/var/lib/ghost/content"
      
    • 修改 [[services]] 區塊中的 internal_port2368
  • 原始內容

  • 修改後內容

    • 修改第 12 行、第 18 到 20 行與第 24 行等內容

Step 5. 設定 Ghost 執行於 development 模式

  • 5.1 從 fly.toml 檔案中的第 3 行取得 App 名稱
    ---2022-08-31---3.09.23
  • 5.2 請在終端機輸入下方指令
    • 修改下方指令中的 APP-NAME5.1 所取得的名稱

      flyctl secrets set -a APP-NAME NODE_ENV=development
      

      ---2022-08-31---3.10.38


Step 6. 部署 Ghost App 到 Fly.io

  • 請在終端機輸入下方指令

    flyctl deploy
    

    ---2022-08-31---3.12.56


Step 7. 查看部署狀態

  • 請在終端機輸入下方指令

    flyctl status
    

    ---2022-08-31---3.13.49


Step 8. 開啟 App

  • 請在終端機輸入下方指令

    flyctl open
    

    ---2022-08-31---3.15.05

    ---2022-08-31---3.15.57

  • 進入到後台模式

    • 透過瀏覽器開啟 https://.fly.dev/ghost
      • 設定管理者登入帳號與密碼等資訊
        ---2022-08-31---3.16.38

      • 後台畫面
        ---2022-08-31---3.17.49

      • 新增文章
        ---2022-08-31---3.18.55

      • 發佈文章
        ---2022-08-31---3.20.19

        ---2022-08-31---3.20.41

      • 文章發佈完成
        ---2022-08-31---3.21.01

      • 新增的文章顯示於前台
        ---2022-08-31---3.21.43


Step 9. 開啟 Fly.io

---2022-08-31---3.22.23

GitHub

List of blogs