用雲託管CloudBase Run部署圖牀應用

在開發創做期間,愈來愈多的開發者出於多樣化需求,選擇自建圖牀,自行管理圖片,安全便捷。那麼,如何優雅地部署一款圖牀應用呢?本文就以一個開源的多功能圖牀爲例,向你們講解如何藉助雲託管(CloudBase Run)在雲開發環境中輕鬆部署一款圖牀應用。html

蘭空圖牀 (Lsky Pro) 已在 Github 上斬獲 1.3K+ Stars ,具備操做簡便、UI美觀、可視化管理、支持接入第三方存儲平臺等多項優勢,目前也已支持一鍵部署至雲開發。git

項目主頁:https://github.com/wisp-x/lsky-progithub

雲託管 CloudBase Run 是由雲開發提供的新一代雲原生應用引擎(App Engine 2.0),支持託管任意語言和框架編寫的容器化應用。sql

部署教程

圖層配置見項目主頁,下方主要介紹雲託管的相關配置操做。

準備工做

開通 CloudBase 雲開發環境數據庫

注意:json

  • 包年包月環境沒法開通雲託管。
  • 目前,來源爲「微信小程序」的環境暫不支持開通雲託管。

第 1 步:開通

登陸 雲開發 CloudBase 控制檯,選擇一個環境,進入雲託管管理頁面,單擊「當即開通」。
小程序

第 2 步:配置雲託管

所在地域

目前,雲託管已開放上海和廣州地域,更多地域將陸續開放。後端

雲託管網絡

網絡設置包括 私有網絡 VPC 和 子網。以環境爲維度,雲託管中建立的全部服務,都將部署在這同一個 VPC 之中,且成功開通雲託管後不支持更換網絡設置。微信小程序

網絡設置分爲以下兩種模式:安全

一、系統默認配置

雲託管將爲您自動新建一個 VPC 和子網,並將其綁定您當前的雲開發環境。

後續您在當前環境下的雲託管中建立的全部服務,都將被部署到這個 VPC 和子網中。

此過程無需您手動進行任何設置。後續您能夠在 私有網絡控制檯 中查看並管理這個由雲託管自動建立的 VPC 及子網,也能夠將更多雲資源部署在這個 VPC 以內,以便這些雲資源進行互動。

二、自定義配置

若是您以前已經建立過私有網絡 VPC 和子網,並在其中已經部署有其餘雲資源,且須要您的雲託管應用與這些已存在的雲資源進行互動,則您能夠選擇「自定義配置」,而後選擇具體的 VPC 和子網。

VPC 只能選擇一個,子網支持選擇多個。

開通成功

單擊「提交」,狀態變爲開通中,請等待數秒。

開通成功後,您將自動跳轉到雲託管的服務列表頁面。

至此您已經成功開通後雲託管服務,您能夠單擊「新建服務」開始部署咱們的圖牀啦。

項目初始化

進入至項目根目錄,鍵入

touch cloudbaserc.json

配置 Cloudbaserc.json

建立好cloudbaserc.json文件後,編輯文件

{
    "version": "2.0",
    "envId": "{{env.ENV_ID}}",
    "framework":{
        "name":"lsky-pro",
        "plugins":{
            "client": {
                "use": "@cloudbase/framework-plugin-container",
                "inputs": {
                "cpu": 0.5,
                "mem": 1,    
                "serviceName": "lsky-pro",
                "servicePath": "/",
                "localPath": "/",
                "mode":"high-availability",
                "uploadType": "package",
                "containerPort": 80,
                "volumeMounts": {
                    "/var/www/html": "lsky-cfs"
                  }
                }
            }
        },
        "requirement": {
            "addons": [
              {
                "type": "CFS",
                "name": "lsky-cfs"
              },
              {
                "type": "CynosDB",
                "name": "lsky"
              }
            ]
          }
    }
}

更多參數說明,可參考雲託管容器插件。

建立 Dockerfile

根據項目的需求,編輯好 Dockerfile 文件以及相關的文件,這裏咱們就不一一詳細說明啦,具體可參考示例倉庫內的Dockerfile

部署至雲託管

在完成上述的一系列工做以後,咱們能夠進行最關鍵的一步 【部署至雲託管】。

將項目上傳至 Github 或者 Gitee 等代碼託管平臺,進入雲開發控制檯,單擊「新建」:

填寫好相關信息後,點擊下一步:

選擇地區,並輸入咱們要建立的數據庫管理員密碼後,點擊下一步:

上述工做完成後,點擊「當即開通」:

在等待片刻後(部署可能須要5-10分鐘),咱們的項目就部署至雲開發·雲託管啦,咱們能夠在雲環境內看到咱們建立的應用。

注:應用須要依賴CFS以及Mysql數據庫,所以會建立相關資源。

通常人我不會告訴他,還能夠根據雲開發 CloudBase Framework 文檔,作一個一鍵部署按鈕哦!

配置相關服務

完成上述步驟後,咱們已經把咱們的應用部署至雲託管啦,可是還差最後一步,給咱們的圖牀建立一個數據庫(部分應用可自動建立)。咱們點擊騰訊雲控制檯菜單,點擊「TDSQL-C」。

點擊「登錄」

在輸入密碼後,建立數據庫

建立完成後,咱們能夠回到剛剛的雲託管應用界面啦。點擊「訪問」便可跳轉至應用安裝頁

數據庫地址輸入咱們的內網地址哦!


安裝完成後,就大功告成啦!!

添加域名(可選)

點擊「訪問服務」,添加域名信息

最後根據要求配置好就完成添加啦

注意事項

  1. 在此示例中,雲託管的副本模式爲高可用,保留了一個副本數供鏈接使用;
  2. TDSQL- C數據庫會在無鏈接狀態(默認10分鐘)下進行暫停,屆時訪問應用會出現數據庫沒法鏈接狀況,刷新再次訪問則會啓動數據庫;
  3. 在配置域名後,可進行CDN加速,保證了圖片訪問的速度。

本示例倉庫地址 Github:https://github.com/Handsomedoggy/lsky-pro

雲託管 CloudBase Run 官網:https://cloud.tencent.com/product/tcbr

CloudBase Framework 1.5K ✨:https://github.com/Tencent/cloudbase-framework

做者:雲開發佈道師Doggy 熊二哈

產品介紹

雲開發(Tencent CloudBase,TCB)是騰訊雲提供的雲原生一體化開發環境和工具平臺,爲開發者提供高可用、自動彈性擴縮的後端雲服務,包含計算、存儲、託管等serverless化能力,可用於雲端一體化開發多種端應用(小程序,公衆號,Web 應用,Flutter 客戶端等),幫助開發者統一構建和管理後端服務和雲資源,避免了應用開發過程當中繁瑣的服務器搭建及運維,開發者能夠專一於業務邏輯的實現,開發門檻更低,效率更高。
開通雲開發:https://console.cloud.tencent.com/tcb?tdl_anchor=techsite
產品文檔:https://cloud.tencent.com/product/tcb?from=12763
技術文檔:https://cloudbase.net?from=10004技術交流羣、最新資訊關注微信公衆號【騰訊雲開發CloudBase】

相關文章
相關標籤/搜索