【问题标题】:upgrade CordaApp for production deployment升级 CordaApp 以进行生产部署
【发布时间】:2019-12-24 15:23:57
【问题描述】:

我正在按照cordapp-example 开发一个小 CordApp

当我启动节点时,corda-node shell 中会出现一条红色消息,指示节点正在开发模式下运行。 从我读过的here 来看,我必须在每个node.conf 中设置devMode=false,并为每个节点实施所有必要的证书。

https://docs.corda.net/permissioning.htmlhttps://docs.corda.net/permissioning.html

有人可以帮我解决这些问题吗?

  • 如何继续添加证书并设置 devMode = false?最好有一个教程/指南,其中包含生成所有证书的步骤
  • 为我的 CordApp 进行生产部署还需要哪些其他步骤?
  • 如何通过https协议暴露在MainController.kt上映射的客户端模块(总是以cordapp-example项目为例)构建的API?

感谢每一个帮助。

【问题讨论】:

    标签: corda production


    【解决方案1】:

    根据您的描述,我假设您手头有所有密钥库和信任库文件。

    • 没什么特别的,只是

      • 将 devMode 设置为 false
      • 将所有密钥库和信任库放在证书/文件夹中
      • 配置您的 node.conf 以添加门卫 URL 和网络蠕虫地图 URL
    • 没有关于如何在生产中部署 CorDapp 的官方指南,因为它在很大程度上取决于您的业务:有多少 Jar 文件、自定义配置项、DB 架构等。基本上,只需按照您已完成的操作即可在开发环境中,没什么特别的。但是,这里是 CorDapp 开发的总体指南,希望对您有所帮助: https://docs.corda.net/cordapp-build-systems.html

    • 我不太明白你的问题,你的意思是:MainController 如何公开 HTTPS 以便其他应用程序(如邮递员或 Javascript 应用程序)可以使用,对吗?如果是这种情况,实际上 MainController.kt 是一个将 REST API 公开的 Spring Boot 控制器,只要您部署了 fat Jar 文件(从 samples/cordapp-example/ 生成),您就可以在任何地方访问它客户/项目)并将其作为服务运行。

    仅供参考,node.conf 文件最终应该是这样的:

    networkServices {
        doormanURL="http://localhost:10000"
        networkMapURL="http://localhost:20000"
    }
    devMode = false
    

    另请参阅以下主题:

    using network-bootstrapper to generate node-info expects certificates with devMode=false

    https://www.edureka.co/community/1068/how-do-i-generate-corda-nodes-keystores-in-dev-mode

    【讨论】:

      猜你喜欢
      • 2019-08-31
      • 2021-02-17
      • 1970-01-01
      • 2017-11-16
      • 2015-11-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-01
      相关资源
      最近更新 更多