图片-稻子网
图片-稻子网
图片-稻子网
图片-稻子网

远程访问服务器-使用 Hippo 进入 WebAssembly

图片[1]-远程访问服务器-使用 Hippo 进入 WebAssembly-稻子网

新钛云服务已为您服务1352天

图片[2]-远程访问服务器-使用 Hippo 进入 WebAssembly-稻子网

是一项非常有前途的新技术,微软的云原生计算团队对其 Deis Labs 子公司和 Azure 非常感兴趣。随着新工具的迅速出现,您需要一个可以试用它们的环境。

这就是为什么 Deis Labs 发布其新的 Hippo 平台如此重要的原因。与 Deis 的许多工具一样,它是一种安装、管理和运行 (WASM) 代码的快速方法远程访问服务器,无论是浏览器托管还是独立系统接口 (WASI)。

使用它的内置通道和 Git 服务器,您可以在一个环境中制作和部署不同的版本,保持生产、暂存和开发构建分开,同时仍然只需要一个 Hippo 服务器。

图片[3]-远程访问服务器-使用 Hippo 进入 WebAssembly-稻子网

图片[4]-远程访问服务器-使用 Hippo 进入 WebAssembly-稻子网

同样在:The 您可以在 Hippo 中托管多个应用程序。这意味着它们默认是沙盒的,并且需要明确的权限才能访问主机系统或外部设备。您的代码也是可移植的。编译后,它将在任何系统上运行,无论是 Linux 还是 macOS、Intel、RISC-V 或 ARM。Hippo 为您提供了一种构建一次、测试一次并在任何地方运行代码的方法。

在开发 PC 上设置 Hippo

图片[5]-远程访问服务器-使用 Hippo 进入 WebAssembly-稻子网

虽然像 Hippo 这样的工具非常适合云原生操作,但当前的开发者版本只在桌面系统上进行了测试。我决定在运行最新版本 WSL2 的托管 PC 上试用它。Deis 提供了在本地运行 Hippo 的说明,以及 macOS 和 Linux 系统的详细信息。

获得在 WSL2 20.04 LTS 系统上运行 Hippo 的先决条件存在一些问题。首先,我需要安装 WAGI,即应用程序网关接口。这很容易安装,在其存储库中托管的可下载二进制文件中有一个二进制文件。一旦下载、解压并移动到用户二进制文件目录,它就可以轻松运行。我借此机会安装了 Rust远程访问服务器,因为如果我必须重新编译任何 Deis 工具,我可能需要它。

这一步可能是 WSL2 上最困难的一步,因为它需要一个 build- 的副本。20.04 没有正确的依赖集,所以我需要一个替代的包安装程序,它允许我将一些关键库降级到适当的版本。Stack 的回答向我指出这是 apt 的替代方案,它允许您为安装选择适当的依赖项,并允许它替换两个低级 C 库。我终于安装了 build- 使用它的安装脚本来准备 Rust。

图片[6]-远程访问服务器-使用 Hippo 进入 WebAssembly-稻子网

什么是绑定?

图片[7]-远程访问服务器-使用 Hippo 进入 WebAssembly-稻子网

将 Rust 作为 Hippo 安装的一部分安装的主要原因是为了 Deis 的打包工具。被描述为“聚合对象存储”系统。其文档使用的比喻是“是一个数字银器抽屉”。我们的银器抽屉里可能都有一些不同的物品,但我们都使用抽屉来分类和存放我们的银器。对构成现代应用程序的工件做很多相同的事情,同时提供对应用程序如何根据使用方式和使用位置组合在一起的某种程度的理解。

推荐白皮书

您可以对应用程序进行描述,其中包含在资源受限的边缘主机(如 Pi)和公共云核心的高性能服务器上进行稀疏安装所需的元素。应用程序主机中的客户端可以获取元素和依赖项并适当地部署它们。结果是一个以应用程序为中心的部署模型,避免了使用存储库和智能描述进行多次构建,从而将正确的代码交付到正确的环境。

安装后,您可以运行它来为 Hippo 设置本地服务器以使用默认设置。接下来,我使用 提供的 WSL 说明安装了 Node.js。这需要使用 curl 下载 nvm,然后运行它以安装最新且长期支持的 node.js 版本。不要使用说明安装节点;他们使用 snap 来安装它,并且 snap 在 WSL2 中没有得到很好的支持。

图片[8]-远程访问服务器-使用 Hippo 进入 WebAssembly-稻子网

您需要为任何 Hippo 托管的 Rust 应用程序安装 Rust 的 -wasi 支持,以及 yo-wasm 应用程序脚手架工具。这将允许您将 Rust 代码编译为 WASI 目标,准备在 Hippo 中运行。

有了这些,我现在可以安装 .NET 5,首先设置对包存储库的支持,然后再安装 .NET 5 SDK 和运行时。.NET 运行时有两种选择:一种支持 ASP.NET Core,另一种不支持。由于 Hippo 是一个模型-视图-控制器 Web 应用程序,因此您应该使用 ASP.NET 版本的运行时。

构建并运行 Hippo

图片[9]-远程访问服务器-使用 Hippo 进入 WebAssembly-稻子网

一旦安装了所有先决条件,您就可以构建 Hippo。首先将 Hippo 存储库克隆到 WSL 系统上的本地目录中。安装后,您可以构建和运行应用程序,通过添加环境变量将其指向本地服务器。此时最好安装 Hippo 的 CLI,因为它是应用程序开发和部署所必需的。

您现在可以连接到您的 Hippo 服务器以测试它是否正常工作。您应该在端口 5001 上找到它。如果您正在运行最新版本的 WSL 2,您应该能够从桌面浏览器连接到它,因为 WSL 2 的一个长期存在的问题最终通过代理其虚拟机器网络,同时仍然保留自己的 IP 地址和虚拟网络交换机。不再需要脚本来提取和共享网络地址。

图片[10]-远程访问服务器-使用 Hippo 进入 WebAssembly-稻子网

在连接到服务器之前,您需要注册一个帐户。由于它在本地运行,因此您可以选择任何您喜欢的帐户详细信息;只要确保它们是您能记住的东西,因为您需要详细信息来构建您的第一个应用程序。创建帐户后,登录。您将被带到带有“创建新应用程序”按钮的“您的应用程序”页面。

创建您的第一个 Hippo 应用程序

图片[11]-远程访问服务器-使用 Hippo 进入 WebAssembly-稻子网

虽然您可以从 Web UI 为 Hippo 构建应用程序,但现在使用命令行更容易。确保您已安装 Hippo CLI,因为它将用于为您构建应用程序脚手架。在开始之前,为您的 Hippo 帐户和密码及其端点设置环境变量。是的,这不是一个好的安全实践,但在这里我们只是使用尚未准备好投入生产的软件在隔离的 PC 上构建和运行测试代码。

要构建一个基本的 hello world 应用程序,请使用 yo-wasm 工具来构建一个 Rust 应用程序。如果您按照脚本输入适当的值,这将构建源代码并将其加载到您的 Hippo 服务器中。

接下来使用 Rust cargo 工具编译和测试您的 WASI 应用程序。在命令行上运行后,您可以使用 Hippo 的 CLI 工具将其推送到在 Hippo 中可见的位置。打开项目,选择您构建的开发环境,然后单击链接运行您的代码。

图片[12]-远程访问服务器-使用 Hippo 进入 WebAssembly-稻子网

河马有很多值得喜欢的地方。如果缺少一件​​事,这是一个有效的类似游乐场,可以帮助您入门。Hippo 可能还不是那个游乐场,但它肯定是您现在可以将其用作您自己的开发工作流程的一部分,即使在早期阶段也是如此。

能够在开发 PC 上运行它是一个额外的优势,因为不需要依赖第三方系统。作为 WSL 2 环境的一部分运行,它的影响足够低,因此您可以利用 Code 之类的工具,利用其远程开发功能从 WSL 中编辑 Rust 代码。

如果您有兴趣,Hippo 可能是您入门所需的工具。它使代码的工作变得更简单,将在一个地方运行开发所需的许多不同的部分结合在一起。虽然它显然仍然是一个早期版本,但这里有足够的内容让您入门,使其成为任何使用它的人的必备工具。

原来的:

了解新的钛云服务

过往技术干货

图片[13]-远程访问服务器-使用 Hippo 进入 WebAssembly-稻子网

图片[14]-远程访问服务器-使用 Hippo 进入 WebAssembly-稻子网

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片