嘿哈布尔!
在本文中,我将告诉您如何使用 Yandex 技术轻松简单地托管静态网站,即 对象存储.
最后,您将拥有一个可通过外部链接访问的网络托管网站。
如果您愿意,这篇文章将会很有用
- 刚刚学习编程的初学者开发人员;
- 开发者制作了一个作品集,并希望将其置于公共领域以向朋友和雇主展示。
关于我
最近,我正在开发一项 SaaS 服务,这是一种人们可以找到进行个人训练的运动教练的市场。 使用了Amazon Web Services堆栈(以下简称AWS)。 但我越深入这个项目,我就越了解组织初创公司的不同流程的细微差别。
我遇到了以下问题:
- AWS 消耗了大量资金。 在企业公司工作了三年,我已经习惯了 Docker、Kubernetes、CI/CD、蓝绿部署等乐趣,并且作为一个有抱负的初创程序员,我也想实现同样的东西。 结果我得出的结论是AWS每月消耗3-300美元。 Kubernetes 竟然是最贵的,大概 400 块钱,最低工资一个集群一个节点。
PS 一开始不需要这样做。 - 接下来,考虑法律方面,我了解了法律 152-FZ,其中内容如下: “俄罗斯联邦公民的个人数据必须存储在俄罗斯联邦境内”,否则罚款,这是我不想要的。 我决定在上面的问题出现之前解决这些问题:)。
启发
对我来说,Yandex.Cloud 的主要功能如下:
- 便宜2-3倍(根据上面文章和公开价目表)
俄罗斯联邦境内用户个人数据的存储 ,这是伟大的亚马逊还无法实现的。
我研究了这项服务的其他竞争对手,但当时 Yandex 获胜了。
我已经向你介绍了我自己,所以我们可以开始谈正事了。
步骤 0. 准备场地
首先,我们需要一个要放置在互联网上的网站。 由于我是一名 Angular 开发人员,因此我将制作一个简单的 SPA 应用程序模板,然后将其发布到互联网上。
PS 谁了解 Angular 或了解其文档
让我们安装 Angular-CLI 以在 Angular 中创建 SPA 站点:
npm install -g @angular/cli
让我们使用以下命令创建一个 Angular 应用程序:
ng new angular-habr-object-storage
接下来,转到应用程序文件夹并启动它以检查其功能:
cd angular-habr-object-storage
ng serve --open
应用程序已创建,但尚未准备好托管。 让我们将应用程序组装成一个小型构建(生产),删除所有不必要的东西,只留下必要的文件。
在 Angular 中,您可以使用以下命令来执行此操作:
ng build --prod
此命令的结果是,应用程序的根目录中出现了一个文件夹 dist
与我们的网站。
作品。 现在让我们继续讨论托管。
步骤1。
让我们去网站
注:
- 要使用Yandex服务,您可能需要Yandex邮件(但这不确定)
- 对于某些功能,您需要将钱存入您的个人账户(至少 500 卢布)。
注册并授权成功后,我们就在您的个人账户中。
接下来,在菜单左侧,您需要找到“对象存储”服务,我们将使用该服务来托管站点。
简而言之:
- 对象存储是一种与亚马逊类似的 AWS S3 技术兼容的文件存储,它也有自己的 API,用于通过代码管理存储,并且与 AWS S3 一样,可用于托管静态站点。
- 在对象存储中,我们创建“桶”(buckets),它们是我们文件的单独存储区域。
让我们创建其中之一。 为此,请在服务控制台中单击“创建存储桶”按钮。
创建桶的表单有以下几个字段,我们来看看:
- 桶名称。 为了简单起见,我们将该项目称为 Angular -
angular-habr-object-storage
- 最大限度。 尺寸。 我们的赌注与我们的网站的权重一样大,因为该网站不是免费存储的,并且对于每分配的 GB,我们将向 Yandex 支付相当多的费用。
- 访问读取对象。 我们将其设置为“公共”,因为用户必须接收我们静态站点的每个文件,以便可以在其上正确绘制布局、处理脚本等。
- 访问对象列表和访问读取设置。 将其保留为“有限”。 为了将存储桶用作应用程序的内部文件存储,这是必要的。
- 存储类。 将其保留为“标准”。 这意味着我们的网站将被频繁访问,因此组成该网站的文件将被频繁下载。 另外,该项目会影响性能和付款(插入链接)。
点击“创建桶”,桶就创建完成了。
现在我们需要将我们的网站上传到存储桶。 最简单的方法是打开附近的文件夹 dist
我们的网站,然后使用手柄将其直接拖到页面上。 这比单击“加载对象”按钮更方便,因为在这种情况下,文件夹不会传输,您必须按照正确的顺序手动创建它们。
因此,该网站被加载到存储中,因此我们可以为用户提供作为网站访问存储的机会。
为此,请在菜单左侧单击“网站”选项卡。
在将存储桶设置为站点的页面上,选择“托管”选项卡。 这里我们表示网站的主页,通常是index.html。 如果您有SPA应用程序,那么可能所有错误也会在主页上处理,因此我们也会在错误页面上指示index.html。
我们立即看到可以通过哪个链接访问我们的网站。 单击保存。
大约 5 分钟后,单击链接,我们看到我们的网站现在可供所有人使用。
感谢所有读到最后的人! 这是我的第一篇文章;我计划进一步描述其他 Yandex 服务以及它们与前端和后端技术的集成。
请在评论中写下您对了解其他 Yandex 服务或 Angular 在现代开发中的使用的兴趣。
来源: habr.com