云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

全站加速_mysql数据库基础_高性价比

小七 141 0

为您提供IDE或文档无法提供的见解帮助您保持在区域/流程中使应用程序运行时更加有形允许您"访问"您的应用程序或服务

因此,让我们回复SAP云平台!

为了简单起见,我决定让问题尽可能简单:

问题:从环境中提取绑定服务的列表

使用npm包cfenv和以下代码片段可以很容易地解决问题:

在本地环境中运行此snipped时,自建站平台,显然不会得到预期的结果。但是,大数据应用技术,如果我们能够在我们的云铸造环境中运行REPL,它就会起作用。从一个非常简单的方法开始。

迭代1:通过SSH连接到应用程序

这是一个非常简单的方法。我通过SSH连接到一个"blank"Cloud Foundry应用程序,并用通常的命令(./Node)启动Node REPL。在运行时内部,节点二进制文件不在环境变量路径中,因此我们需要以这种方式引用它。

这种简单的方法工作得很好,但也有一些缺点。绑定的CloudFoundry服务需要事先在驾驶舱中创建。应用程序(节点/python)依赖关系也需要在设计时声明。另一个问题是,这种方法建立在cfcli和开发人员帐户上。我认为这是一个"缺点",超级淘客,即使这种限制在某些情况下可能是需要的。

迭代2:构建一个基于OpenUI5的REPL

这个迭代提高了可访问性。我用必要的后端逻辑创建了一个简单的OpenUI5应用程序。这样我们就可以"吃自己的狗粮"。

幸运的是,OpenUI5有一个代码编辑器控件和语法高亮显示功能。我们可以使用这个控件来输入代码,一个按钮来提交代码,什么叫大数据云计算,一个字段来打印输出,瞧:

我不想详细介绍后端部分,因此我只画出轮廓:

我将提交的代码(POST请求的负载)保存为javascript文件,并在子进程中运行它。这可能是你见过的最糟糕、最不安全的代码,这就是为什么我不跟你分享它的原因?。

任何授权用户都可以从任何web浏览器访问REPL的方法非常好。但是这种方法仍然有一些缺点:

迭代3:将一个独立的Docker映像部署到cloudfoundry

上一次迭代让我意识到,我基本上想要实现一个IDE。由于许多原因(例如,需要太多时间、太复杂),这没有意义。此外,已经有很多基于web的优秀ide。众所周知,CloudFoundry允许我们部署任何Docker映像。这意味着我们不必编写IDE,我们只需选择我们最喜欢的云IDE的docker映像即可!我选择Theia是因为它的占地面积非常小,可以在试用环境中运行清单.yml使用以下有效负载文件并运行cf push来部署映像。

现在我们有了一个正在运行的web应用程序,它提供的不仅仅是REPL。此IDE允许您创建文件并访问终端。使用这个终端,您可以安装任何npm或python模块并执行脚本。如果您知道如何在终端中调试,甚至可以使用断点。在我们的情况下,我们需要:

请记住,每个知道服务URL的人都可以访问此IDE。另外,在部署之前,物联网竞赛,我们还需要创建绑定的云服务

迭代4:部署Docker镜像和服务

在上一次迭代中,我们将清单.yml归档到mtad.yaml公司. 这个清单.yml描述符文件是一个"纯"的CloudFoundry工件,它描述单个微服务。相比之下mtad.yaml公司是一个SAP云平台Cloud Foundry工件,描述了一组微服务。这个文件描述了每个模块(=微服务)和绑定的服务mtad.yaml公司文件可能是这样的:

通过GIPHY在沙盒中很有趣

您还学习了如何:

在cloudfoundry中部署REPL使用SSH运行CF app将纯Docker映像部署到Cloud Foundry将Docker映像和云服务一起部署到SAP云平台Cloud Foundry

您认为云中的REPL有用吗?或者您对该项目的下一次迭代有什么想法?请在评论中告诉我!

2019年2月13日更新:如果你想看到REPL的运行,请查看DJ亚当斯的视频

2019年2月25日更新:第4步现在也可以在试用环境中工作了!