我们正在建立一个更好的Heroku

2021-03-23 21:21:12

创建Web应用程序变得非常方便和简单。您将从本地开发环境中开始,运行DEV服务器并验证更好的更改。在某个点,您想与您的朋友分享它。服务或服务器?

在过去的20年里,我一直是一个重点的开发人员,Web开发通常与JavaScript和CSS战斗。特别是Heroku作为部署平台是我的新领域。

让'首先创建一个帐户,登录和遵循Web说明以创建一个新应用程序。

好的。在某些试验和错误之后,名称需要在全局命名空间中是唯一的。时间停止并阅读文档。

让我们尝试一个有趣的演示,战舰游戏来学习客户端和服务器上的nodejs上的JavaScript。

CLI命令添加了一个名为heroku的新git远程,我们需要推进。

$ git推送heroku mainRemote:----->启动...远程:发布的V3Remote:https://nameless-mountain-48655.herokuapp.com/部署到HerokureMote:Remote:验证部署...完成。

在不到5分钟的时间内部署。到达那里并安装CLI的先决条件比预期更长。

涉及许多CLI命令,它没有在CI / CD管道中运行,然后在部署之前具有额外的测试。现在Web应用程序部署到黑匣子中。想要使用让我们的加密和您自己的域名?如何将部署添加到Gitlab以在Devops工作流中具有单个应用程序?

Heroku就像是精灵的堕落文明。美丽,不朽,受到遇到的所有遇到的人 - 但仍然是一个死胡同。

- 亚当雅各布(@adamhjk)2021年3月10日

显然Heroku不是开源,使贡献不那么容易。您无法通过阅读源代码来调试Heroku。

云资源便宜。 AWS提供免费层,Hashicorp Terraform已成为管理多云资源,Gitlab集成应用程序包装,容器注册表,部署和TLS证书的优秀工具。

有更多的应用程序成绩:提供PostgreSQL VM,添加Redis,SMTP电子邮件传输,与让我们加密的自定义域。

第二步是在Gitlab项目中具有可用的源代码。您可以使用新项目>进口项目>通过URL repo自动导入github存储库https://github.com/kubowania/battleships.git。

导入后,导航到设置> CI / CD>要指定AWS凭据和区域的变量。确保勾选蒙面复选框以隐藏所有作业日志。

导航回项目概述。单击“设置CI / CD”按钮或打开Web IDE以创建一个新的.gitlab-ci.yml文件。添加远程CI / CD模板包含如下所示:

战斗应用程序不需要PostgreSQL和Redis后端。它们被禁用,将TF_VAR_DISABLE_POSTGRES和TF_VAR_DISABLE_DIS变量设置为FALSE。

Depoy作业日志在〜5分钟内与URL发出问候,包括允许加密TLS证书。我们走了,让我们玩一些战舰!

请注意,我们从未离开浏览器,没有CLI涉及。在附带的模板旁边,还可以在此项目中添加更多CI测试和安全最佳实践的余地。您可以导航到AWS控制台以进行调试和故障排除,并计划在需要的情况下进行生产预算。

此博客文章涵盖了Heroku和5分钟的生产应用程序的基本学习步骤。典型的Web应用程序需要数据库,存储或缓存后端,它可以与Heroku一起运行。我们将探索未来博客帖子中的设置和生产经验。除了后端之外,我们还将查看CD工作流程中的TLS证书和生产环境。