在Predix平台玩转C#

来源:互联网 发布:网络客服沟通技巧 编辑:程序博客网 时间:2024/05/16 06:39

在Predix平台玩转C#

通过前面的章节,我们已经了解了如何编写、推送Java / SpringBoot应用程序,Python / Flask应用程序。本小节,我们介绍Windows开发环境下最流行的C#应用程序的推送。

跨平台的.NET Core运行时环境

.NET是微软设计实现一个通用的开发平台,可以用来运行各种类型的应用程序,包括Web应用,桌面应用,数据库应用,命令行应用等。得益于近几年微软的开放态度,.NET Core于2014年开源并成为跨平台的运行时环境。因此,我们可以在cflinuxfs2的根文件系统上,也就是Ubuntu Trusty 14.04的精简版上,直接安装.NET Core的运行时环境,进行C#应用程序的编译和运行。

推送.Net Core应用

因为.NET Core的跨平台特性,使得我们在Predix Cloud上部署C#应用也非常的方便。

下载hello-dotnet应用源码

首先,我们需要下载一个C#应用源码,这个应用就是我们常见的hello World应用。

$ git clone https://github.com/pxie/dotnet-core-hello-world.git

推送hello-dotnet应用到Predix Cloud

和推送其他应用一样,我们用cf push就可以完成hello-dotnet应用的推送。

$ cd dotnet-core-hello-world$ cf push

注:Predix平台默认没有提供.NET Core的buildpack,这时候,我们可以指定系统以外buildpack源。例如,我们在manifest.yml文件中指定github.com上的dotnet-core-buildpack的源。

查看hello-dotnet应用

当部署完成hello-dotnet应用后,我们就可以从cf push命令的输出中获取该应用的URL。通过浏览器访问相应的URL,我们就可以看到经典的Hello World!了。例如,https://hello-dotnet-absolutory-receptacle.run.aws-jp01-pr.ice.predix.io。

*省略部分cf push命令行的输出*requested state: startedinstances: 1/1usage: 170M x 1 instancesurls: hello-dotnet-absolutory-receptacle.run.aws-jp01-pr.ice.predix.io    <-- hello-dotnet应用的URLlast uploaded: Thu Apr 27 02:47:34 UTC 2017stack: cflinuxfs2buildpack: https://github.com/cloudfoundry/dotnet-core-buildpack.git     state     since                    cpu    memory          disk             details#0   running   2017-04-27 10:50:57 AM   1.2%   93.7M of 170M   286.9M of 350M

小结

通过本节的介绍,我们了解到,

  1. .NET Core已经是跨平台的运行时环境了,可以在Linux、MacOS等非Windows平台上直接部署。
  2. Predix平台默认没有提供.NET Core的buildpack,但是我们可以指定系统以外buildpack源,完成C#应用的推送。
  3. 推送C#应用和其他应用没有什么不同,只需要运用cf push命令将源码推送到Predix Cloud,平台帮助我们完成编译和运行的工作。

当我们了解了以上知识,C#的开发人员也可以同Java开发人员一样,在Predix平台开启自己的工业互联网应用开发之路。

作者:谢品,上海创新坊首席架构师,GE数字集团
专注于工业互联网,云计算,大数据,高性能分布式存储领域,对Cloud Foundry和传统应用向云端迁移有丰富的经验,曾供职于VMware,EMC,Autodesk等知名软件公司云计算部门。