使用 cloud foundry CLI 的外部依赖性不起作用

External Dependency Using cloud foundry CLI not working

我正在尝试编写脚本以在 cloud foundry 上创建外部依赖服务,该脚本成功执行但未在 Web 面板上显示 IP。即使我将服务与应用程序绑定,它也不允许列出的 IP。但是,如果我从 Web 面板配置外部依赖项,那么我就可以查看所有 IP 条目,并且它允许列出的 IP。 如果有人使用 CLI 创建带有 IP 列表的外部依赖服务,建议指出我的实现中的问题。

cf create-service external-dependency-service unstructured myservice -c dependency.json >> G:\Logs

dependency.json

{
"dependencyAsJson" : {
    "description" : "Testing External Dependency",
    "destinations" : [
    {
        "address" : "192.168.1.1",
        "protocol" : "tcp",
        "portStart" : 1,
        "portEnd" :  100
    },
    {
        "address" : "192.168.1.2",
        "protocol" : "tcp",
        "portStart" : 1,
        "portEnd" :  100
    }
    ]
}
}

您可以查看日志以验证 cli 命令是否成功执行。使用以下命令启用跟踪

cf config --trace=true

json对象的格式必须是带有转义字符串的特定格式,单行且双引号之间没有换行符和空格

cf create-service external-dependency-service unstructured myservice -c dependency.json >> G:\Logs

{"dependencyAsJson" : {\"description\" : \"Testing External Dependency\",\"destinations\" : [{\"address\" : \"192.168.1.1\",\"protocol\" : \"tcp\",\"portStart\" : 1,\"portEnd\" :  100},{\"address\" : \"192.168.1.2\",\"protocol\":\"tcp\",\"portStart\" : 1,\"portEnd\" : 100}]}}

如果您在 java 字符串中使用它,那么您应该 \\ 以保持格式

{"dependencyAsJson" : {\\"description\\" : \\"Testing External Dependency\\",\\"destinations\\" : [{\\"address\\" : \\"192.168.1.1\\",\\"protocol\\" : \\"tcp\\",\\"portStart\\" : 1,\\"portEnd\\" :  100},{\\"address\\" : \\"192.168.1.2\\",\\"protocol\\":\\"tcp\\",\\"portStart\\" : 1,\\"portEnd\\" : 100}]}}