如何使用 Yandex.Cloud 物件儲存託管靜態網站

嘿哈布爾!

在本文中,我將告訴您如何使用 Yandex 技術輕鬆簡單地託管靜態網站,即 對象存儲.

最後,您將擁有一個可透過外部連結存取的網站託管網站。

如果你願意,這篇文章將會很有用

  • 剛學習程式設計的初學者開發人員;
  • 開發者製作了一個作品集,並希望將其置於公共領域以向朋友和雇主展示。

關於我

最近,我正在開發一項 SaaS 服務,這是人們可以找到進行個人訓練的運動教練的市場。 使用了Amazon Web Services堆疊(以下簡稱AWS)。 但我越深入這個項目,我就越了解組織新創公司的不同流程的細微差別。

我遇到了以下問題:

  • AWS 消耗了大量資金。 在企業公司工作了三年,我已經習慣了 Docker、Kubernetes、CI/CD、藍綠部署等樂趣,並且作為一個有抱負的新創程式設計師,我也想實現同樣的東西。 結果我得出的結論是AWS每月消耗3-300美元。 Kubernetes 竟然是最貴的,大概 400 塊錢,最低工資一個集群一個節點。
    PS 一開始不需要這樣做。
  • 接下來,考慮法律方面,我了解了法律 152-FZ,其中內容如下: “俄羅斯聯邦公民的個人資料必須儲存在俄羅斯聯邦境內”,否則罰款,這是我不想要的。 我決定在上面的問題出現之前解決這些問題:)。

啟發 文章 關於將基礎架構從 Amazon Web Services 遷移到 Yandex.Cloud,我決定更詳細地研究 Yandex 堆疊。

對我來說,Yandex.Cloud 的主要功能如下:

我研究了這項服務的其他競爭對手,但當時 Yandex 獲勝了。

我已經向你介紹了我自己,所以我們可以開始談正事了。

步驟 0. 準備場地

首先,我們需要一個要放置在網路上的網站。 由於我是 Angular 開發人員,因此我將製作一個簡單的 SPA 應用程式模板,然後將其發佈到網路上。

PS 誰了解 Angular 或了解其文檔 https://angular.io/guide/setup-local, 去 步驟1.

讓我們安裝 Angular-CLI 以在 Angular 中建立 SPA 網站:

npm install -g @angular/cli

讓我們使用以下命令來建立一個 Angular 應用程式:

ng new angular-habr-object-storage

接下來,轉到應用程式資料夾並啟動它以檢查其功能:

cd angular-habr-object-storage
ng serve --open

如何使用 Yandex.Cloud 物件儲存託管靜態網站

應用程式已創建,但尚未準備好託管。 讓我們將應用程式組裝成一個小型建置(生產),刪除所有不必要的東西,只留下必要的檔案。
在 Angular 中,您可以使用以下命令來執行此操作:

ng build --prod

此命令的結果是,應用程式的根目錄中出現了一個資料夾 dist 與我們的網站。

作品。 現在讓我們繼續討論託管。

步驟1。

前往網站 https://console.cloud.yandex.ru/ 並點擊“連接”按鈕。

注:

  • 要使用Yandex服務,您可能需要Yandex郵件(但這不確定)
  • 對於某些功能,您需要將錢存入您的個人帳戶(至少 500 盧布)。

註冊並授權成功後,我們就在您的個人帳戶中。

如何使用 Yandex.Cloud 物件儲存託管靜態網站

接下來,在選單左側,您需要找到「物件儲存」服務,我們將使用該服務來託管網站。

簡而言之:

  • 物件儲存是一種與亞馬遜類似的 AWS S3 技術相容的文件存儲,它也有自己的 API,用於透過程式碼管理存儲,並且與 AWS S3 一樣,可用於託管靜態網站。
  • 在物件儲存中,我們建立「桶」(buckets),它們是我們文件的單獨儲存區域。

如何使用 Yandex.Cloud 物件儲存託管靜態網站

讓我們創建其中之一。 為此,請在服務控制台中按一下「建立儲存桶」按鈕。

如何使用 Yandex.Cloud 物件儲存託管靜態網站

建立桶的表單有以下幾個字段,我們來看看:

  • 桶名稱。 為了簡單起見,我們將該項目稱為 Angular - angular-habr-object-storage
  • 最大限度。 尺寸。 我們的賭注與我們的網站的權重一樣大,因為網站不是免費儲存的,而且對於每分配的 GB,我們將向 Yandex 支付相當多的費用。
  • 存取讀取物件。 我們將其設定為“公共”,因為使用者必須接收我們靜態網站的每個文件,以便可以在其上正確繪製佈局、處理腳本等。
  • 存取物件清單和存取讀取設定。 將其保留為“有限”。 為了將存儲桶用作應用程式的內部文件存儲,這是必要的。
  • 儲存類別。 將其保留為“標準”。 這意味著我們的網站將被頻繁訪問,因此組成該網站的文件將被頻繁下載。 另外,該項目會影響效能和付款(插入連結)。

點擊“創建桶”,桶就創建完成了。

如何使用 Yandex.Cloud 物件儲存託管靜態網站

現在我們需要將我們的網站上傳到儲存桶。 最簡單的方法是打開附近的資料夾 dist 我們的網站,然後使用手把將其直接拖曳到頁面上。 這比點擊「載入物件」按鈕更方便,因為在這種情況下,資料夾不會傳輸,您必須按照正確的順序手動建立它們。

如何使用 Yandex.Cloud 物件儲存託管靜態網站

因此,該網站被加載到儲存中,因此我們可以為用戶提供作為網站存取儲存的機會。
為此,請在選單左側點擊“網站”標籤。

如何使用 Yandex.Cloud 物件儲存託管靜態網站

在將儲存桶設定為網站的頁面上,選擇「託管」標籤。 這裡我們表示網站的主頁,通常是index.html。 如果您有SPA應用程序,那麼可能所有錯誤也會在主頁上處理,因此我們也會在錯誤頁面上指示index.html。

我們立即看到可以透過哪個連結造訪我們的網站。 單擊儲存。

大約 5 分鐘後,點擊鏈接,我們看到我們的網站現在可供所有人使用。

如何使用 Yandex.Cloud 物件儲存託管靜態網站

感謝所有讀到最後的人! 這是我的第一篇文章;我計劃進一步描述其他 Yandex 服務以及它們與前端和後端技術的整合。

請在評論中寫下您對了解其他 Yandex 服務或 Angular 在現代開發中的使用的興趣。

來源: www.habr.com

添加評論