在我直接提出问题之前,我想谈谈我是如何遇到这个问题的。
基本上,我现在正在使用IBM区块链技术,不仅要使用Bluemix中的块链服务,还要修改Hyperledger对等源代码。您可以从https://github.com/hyperledger/fabric找到Hyperledger项目。它是由GO编写的Linux平台应用程序。
修改后,我们在当地的vagrant虚拟机服务器上进行了测试。所有的改变都很好。
现在我尝试通过CF App频道将更新的代码部署到IBM Bluemix。该操作在编译阶段失败,因为缺少基本环境。
这是我的问题:
感谢您的想法和贡献。
答案 0 :(得分:0)
我们考虑过将Hyperledger节点作为Cloud Foundry中的应用程序运行。可以使用Go,RocksDB,Docker的可执行文件和其他必要的依赖项来创建buildpack。然而,配置存在一些挑战:
-c
选项在CF中运行“Membership service”,“Validation peer”和“REST client”作为不同的应用程序。在应用程序级别,注册证书存在问题(只能发出一次),以防CF重新启动您的应用程序 - 验证对等方将无法使用相同的凭据申请其他注册证书。 解决方法 - 可以将证书保存在外部永久存储中,并在启动时加载它们。在任何情况下,VP在CF中只有1个实例(不会使用可伸缩性)
因此,如果没有自定义Fabric核心,我们很难使用可扩展性和自动故障转移等CF等优势。
答案 1 :(得分:0)
我同意上述说明,只有当我们有对等应用程序时,Docker才能在CF容器内工作。你IBMBluemix应该有适当的VM配置,因为CF有有限的端口。