【问题标题】:How a team can work on the same cloud application团队如何在同一个云应用程序上工作
【发布时间】:2019-10-02 07:39:07
【问题描述】:

考虑两个或多个应用程序相互“对话”并部署到云端(云代工)。 团队在同一应用程序实例上工作(开发/测试/调试)但在他/她“自己的”空间中工作而不在云中创建另一个应用程序实例的最佳实践是什么?还是每个开发人员都需要拥有这些应用程序的本地副本并在 docker/kubernetes 中运行它?

【问题讨论】:

  • 问题似乎很广泛。如果您还解释一些技术细节(例如您使用的是 Kubernetes 还是独立机器等),将会非常有用。
  • 我们不使用 Kubernetes。我们使用云代工厂来部署我们的云应用程序。我们希望能够在我们自己的本地机器上调试和预更改这些应用程序,而无需实际更改当前的应用程序代码。
  • 如果你想在本地使用 Cloud Foundry,你可以看看 cf-dev。它使您可以运行本地云代工厂github.com/cloudfoundry-incubator/cfdev。我认为这不能回答你的问题,但它可能会回答部分问题?您也可以在本地机器上运行和调试您的应用程序。这就是我通常这样做的原因。像 Docker 容器和 Cloud Foundry 这样的开销越少,迭代、调试和测试更改的速度就越快。如果你能把这些东西从你的开发周期中解脱出来,你就可以更快地行动。不过,服务和依赖项使这变得很棘手。不知道那里有什么好的答案。

标签: docker kubernetes cloud devops cloud-foundry


【解决方案1】:

这个问题很笼统,但这里有一些值得一提的方向。所以,一个简短的答案可能是:

  1. 在需要时与您正在开发的应用一起运行协作应用。
  2. 为了缓解这种情况,首选 CF Local(轻量级 Docker 容器)而不是 CF Dev(运行整个 CF 基础)。
  3. 如果运行其他协作应用程序的挑战太大,请创建模仿其行为的模拟,以满足您需要的交互(或测试场景)。

关于 CF Local 的一些话:如今,不再建议 Cloud Foundry 开发人员在他们的笔记本电脑上运行整个 Cloud Foundry 基础。当 CF Dev 到来时,它已经是在BOSH-Lite 上运行整个基础的改进(它仍然有它的用例,我每天都使用它),但是对于典型的cf push 开发人员体验,CF Local 非常适合并且是更轻巧。

因此,现在推荐使用 CF Local。它应该可以帮助您在本地机器上运行一堆协作的微服务应用程序,在标准 Docker 容器中,在普通 Docker 引擎之上运行。有关详细信息,请参阅 CF Local Github 页面和 comparison chart with CF Dev,了解 CF Local 非常适合的用例。

对于数据服务(例如 MySQL 或 PostgreSQL 数据库),CF Local 已经提供了重用来自 CF 基础的相同服务实例的解决方案。您也可以在笔记本电脑上运行自己的引擎,并找到一种方法让您的 cf-local-pushed 应用在此上下文中绑定到这些服务。

希望这可以为您提供一些有趣的方向,让您可以挖掘并找到自己的方式!

【讨论】:

  • 如果我有 2 个使用 CF Local 运行的应用程序,并且应用程序 A 向应用程序 B 发送调用,我现在希望应用程序 A 将调用发送到当前使用 CF Local 在本地运行的应用程序 B,什么是这样做的正确方法?有没有办法在不更改代码的情况下做到这一点?
【解决方案2】:

您的问题看起来很广泛,因为每个企业都有自己的工具链或工作方式。但是如果你是新手并且想快速组织你的团队,你可以使用 JX。 Jenkins X 这是 Jenkins 的改进版本。 Cloud Foundry 支持 JX。

基本上,使用 JenkinsX,您有一个预览环境/暂存/生产。

Jenkins X 将自动创建必要的代码(helm Charts)以将您的应用程序部署到云端...通过命令

jx import --branches "master|develop"

给它时间,学习它,你会看到它的魔力)。

最佳实践是创建一个完整的 CI/CD 工作流程,并让您的团队至少每天检查一次源代码(取决于有多少人在开发一个应用程序)。

祝你好运!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-06
    • 2018-06-30
    • 2012-07-31
    • 1970-01-01
    • 1970-01-01
    • 2011-02-01
    相关资源
    最近更新 更多