美文网首页
在Pivotal Web Service上部署应用

在Pivotal Web Service上部署应用

作者: worldwar | 来源:发表于2017-07-20 23:49 被阅读0次

    Pivotal Web Service是Pivotal公司提供的公有云服务,其底层架构是Cloud Foundry。本文今天就要介绍如何使用Cloud Foundry客户端工具cf在PWS上部署应用。为什么要将应用部署到云上呢?因为云在那儿。

    本文将要部署的系统包含两个应用,一个是react前端应用,一个是spring boot后台服务。看看如何在PWS上部署这两个应用吧。

    1在PWS上部署spring boot应用

    1在Pivotal官网(https://account.run.pivotal.io/z/uaa/sign-up)上注册帐号

    2在Cloud Foundry的github页面(https://github.com/cloudfoundry/cli#downloads)下载cf客户端并安装

    3使用cf客户端登录Pivotal帐号,即执行以下命令

    cf login -a https://api.run.pivotal.io

    4进入到你的项目目录,新建manifest.yml文件,内容如下:

    add manifest.yml

    ---

      applications:

      - name: readinglist

      instances: 1

      host: readinglist

      path: build/libs/readinglist-0.0.1-SNAPSHOT.jar

    结合项目自身情况,合理设置name, host,path等属性

    5在项目目录下执行cf push命令,这时,你会看到cf会上传你的应用并部署。

    至此,应用已经部署完毕,但现在你就自信回头,有可能会造成意想不到的后果。所以在回城前至少在周围草丛插个眼:

    6查看应用日志:执行命令cf logs readinglist --recent

    以及访问应用主页http://readinglist.cfapps.io/,假如一切正常,则大功告成。但假如看到有数据库相关错误,则说明应用需要一个数据库。

    7配置数据库

    运行cf marketplace命令,查看PWS提供了哪些服务。

    假如我们需要使用postgresql数据库,可以看到在cf marketplace结果里面有一个名为elephantsql的服务是为我们提供postgresql数据库

    运行cf marketplace -s elephantsql查看该服务提供哪些套餐,以及这些套餐的相关规格和收费信息

    运行cf create-service elephantsql turtle readinglistDB,创建一个名为readinglistDB的postgresql服务,采用的是elephantsql提供的turtle套餐(这是一个免费套餐)

    运行cf bind-service reading list readinglistDB命令,将我们刚刚创建的服务readinglistDB,与我们的应用readinglist绑定起来

    运行cf restart readinglist重启服务,查看日志及访问主页,可以看到你可以访问数据库了

    8访问数据库

    在某些情况下,假如应用不能自动创建数据库表等数据,我们需要直接访问数据库来手工创建这些数据库表。以postgresql为例,登录Pivotal项目控制台页面(console.run.pivotal.io),查看readinglistDB服务的相关信息,点击Manage,跳转到postgresql服务提供商的页面,页面上显示了我们项目使用的posgresql相关配置,如url,用户名,密码等。利用这些信息通过postgresql客户端登录数据库,执行相关初始化sql,应用即能正常运行了。

    2部署react应用

    由于react应用打包之后就是一些静态文件,所以本质上就是静态文件的部署

    1构建react应用,进入到构建目录,创建一个名为Staticfile的空白文件

    2cf push

    相关文章

      网友评论

          本文标题:在Pivotal Web Service上部署应用

          本文链接:https://www.haomeiwen.com/subject/bjzjkxtx.html