自建圖牀應用,我只推薦 Serverless

Serverless 除了可以用來自建網盤,還能特別便捷地搭建圖牀。

程序員寫作一般會用 Markdown 格式,Markdown 雖然簡潔方便,但圖片的插入卻是一個問題。這時候就需要用到圖牀了。

什麼是圖牀?

一般來說,網絡文章上的配圖,在瀏覽器打開後都會有一條圖片鏈接,這個鏈接指向的服務器就是「圖牀」。

在網上寫博客的朋友們,如果需要複製某張圖片,偶爾會遇到「圖片禁止引用」的情況,就是因爲各大網站的圖牀不允許公開訪問。此時,你就需要另存圖片,再重新上傳插入。如果有自己的圖牀,那麼寫博客的時候就不用來回折騰插圖了。

效果展示

首先,我們需要先開通騰訊雲 Serverless 雲函數對象存儲 COS 服務;

接下來,我們可以通過雲函數控制檯直接進行操作,或者通過 Serverless Framework 工具進行部署。

一、使用雲函數控制檯部署

1. 新建函數並上傳函數代碼包

選擇空白函數

從本地上傳 zip 代碼包(從 GitHub 下載代碼)

代碼包地址:https://github.com/awesome-scf/scfimgbed
注意:zip 包內應能直接看到 index.js,不能是在文件夾內

2. 修改文件配置

打開「函數管理 - 函數代碼」,修改 defaultconfig.js 文件配置,修改完成後,將該文件重命名爲 config.js。

SecretId 和 SecretKey 可以從「訪問管理-API 密鑰管理」中獲得

3. 創建對象存儲 COS 桶

如果沒有對象存儲的存儲桶,需要創建一個,並在存儲桶概覽中獲得 Bucket 和 Region 信息:

並在存儲桶內創建文件夾:

非必要,和 config 配置保持一致即可

4. 新建觸發器

修改完成後點擊保存,並在「觸發管理」中,新建兩個觸發器:

API 網關 GET 觸發器配置,需開啓集成調試

API 網關 POST 觸發器配置

點擊 API 網關 POST 觸發器,選中「編輯」

勾選支持 CORS 並保存

找到 POST 方法地址

將 upload.html 文件中的 scf_url 改成 API 網關 POST 觸發器的地址

訪問 API 網關 GET 觸發器的地址即可

通過上面四步,圖牀應用就新建成功啦~

二、通過命令行部署

1. 安裝命令行工具 Serverless Framework

npm install -g serverless

2. 下載項目模版代碼

進入模版下的函數目錄頁,修改配置信息

sls init imgbed-for-scf
cd imgbed-for-scf/scf 

在配置文件config.js 裏填入您的 SecretId 與 SecretKey

const config = {
    tencent_cos: {
        SecretId: 'XXXXXXXXXX', //您的 SecretId
        SecretKey: 'XXXXXXXXXXX', //您的 SecretKey
    }
}
module.exports = config

您也可以通過 sls registry imgbed-for-scf 指令,快速瞭解項目的詳細信息。

3. 部署

回到根目錄下,deploy 完成部署。

cd ..
sls deploy

4. 測試應用

部署成功後,打開 scf 目錄下的 upload.html 文件,將創建成功的 API 網關 URL,填入 scf_url 字段裏

保存後,在瀏覽器中打開該頁面,即可使用您自己的圖牀應用:

One More Thing

立即體驗騰訊雲 Serverless Demo,領取 Serverless 新用戶禮包 👉 serverless/start

歡迎訪問:Serverless 中文網

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章