Skipper 命令
22. 包命令
跳伞者的包命令包括以下内容:<br>
22.1. 搜索
此命令搜索现有包。
- 姓名
-
package search - 搜索包。
- 概要
-
package search [[--name] 字符串] [ --details]
- 选项
-
- --name string
-
用于搜索包名称的通配符表达式
[可选,默认为<none>] - --details 布尔值
-
用于设置更详细的包元数据
[可选,默认值为false]
- 亦称
-
包列表
在 Skipper 服务器上安装软件包时,search 或其别名 list 命令会显示所有可用的软件包,如下例所示(附输出):
skipper:>package search
╔═════════════════╤═══════╤════════════════════════════════════════════════════════════════════════════════╗
║ Name │Version│ Description ║
╠═════════════════╪═══════╪════════════════════════════════════════════════════════════════════════════════╣
║helloworld │1.0.0 │The app has two endpoints, /about and /greeting in English. Maven resource. ║
║helloworld │1.0.1 │The app has two endpoints, /about and /greeting in Portuguese. Maven resource. ║
║helloworld-docker│1.0.1 │The app has two endpoints, /about and /greeting in Portuguese. Docker resource.║
║helloworld-docker│1.0.0 │The app has two endpoints, /about and /greeting in English. Docker resource. ║
╚═════════════════╧═══════╧════════════════════════════════════════════════════════════════════════════════╝
skipper:>package list
╔═════════════════╤═══════╤════════════════════════════════════════════════════════════════════════════════╗
║ Name │Version│ Description ║
╠═════════════════╪═══════╪════════════════════════════════════════════════════════════════════════════════╣
║helloworld │1.0.0 │The app has two endpoints, /about and /greeting in English. Maven resource. ║
║helloworld │1.0.1 │The app has two endpoints, /about and /greeting in Portuguese. Maven resource. ║
║helloworld-docker│1.0.1 │The app has two endpoints, /about and /greeting in Portuguese. Docker resource.║
║helloworld-docker│1.0.0 │The app has two endpoints, /about and /greeting in English. Docker resource. ║
╚═════════════════╧═══════╧════════════════════════════════════════════════════════════════════════════════╝
The search command can use --name option to search for the package name containing the given option value, as shown (with output) in the following example:
skipper:>package search --name helloworld-
╔═════════════════╤═══════╤════════════════════════════════════════════════════════════════════════════════╗
║ Name │Version│ Description ║
╠═════════════════╪═══════╪════════════════════════════════════════════════════════════════════════════════╣
║helloworld-docker│1.0.0 │The app has two endpoints, /about and /greeting in English. Docker resource. ║
║helloworld-docker│1.0.1 │The app has two endpoints, /about and /greeting in Portuguese. Docker resource.║
╚═════════════════╧═══════╧════════════════════════════════════════════════════════════════════════════════╝
要搜索有关软件包的更多详细信息,可以使用--details选项,如下例所示(带输出):
skipper:>package search --name helloworld- --details
╔════════════════╤═════════════════════════════════════════════════════════════════════════════╗
║ Name │ Value ║
╠════════════════╪═════════════════════════════════════════════════════════════════════════════╣
║apiVersion │v1 ║
║origin │A sample repository for using Skipper ║
║repositoryId │1 ║
║kind │skipper ║
║name │helloworld-docker ║
║version │1.0.0 ║
║packageSourceUrl│https://github.com/markpollack/skipper-sample-repository ║
║packageHomeUrl │https://github.com/markpollack/skipper-sample-repository ║
║tags │web, demo, docker, helloworld ║
║maintainer │https://github.com/markpollack ║
║description │The app has two endpoints, /about and /greeting in English. Docker resource.║
║sha256 │ ║
║iconUrl │ ║
╚════════════════╧═════════════════════════════════════════════════════════════════════════════╝
╔════════════════╤════════════════════════════════════════════════════════════════════════════════╗
║ Name │ Value ║
╠════════════════╪════════════════════════════════════════════════════════════════════════════════╣
║apiVersion │v1 ║
║origin │A sample repository for using Skipper ║
║repositoryId │1 ║
║kind │skipper ║
║name │helloworld-docker ║
║version │1.0.1 ║
║packageSourceUrl│https://github.com/markpollack/skipper-sample-repository ║
║packageHomeUrl │https://github.com/markpollack/skipper-sample-repository ║
║tags │web, demo, docker, helloworld ║
║maintainer │https://github.com/markpollack ║
║description │The app has two endpoints, /about and /greeting in Portuguese. Docker resource.║
║sha256 │ ║
║iconUrl │ ║
╚════════════════╧════════════════════════════════════════════════════════════════════════════════╝
22.2. 上传
此命令上传一个 .zip 包装文件,如下例所示(带输出):
- 姓名
-
上传 - 上传软件包。
- 概要
-
package upload [--path] string [[--repo-name] string]
- 选项
-
- --路径 字符串
-
要上传的包
[必填] - --仓库名称 字符串
-
要上传到的本地存储库名称
[可选,默认为<none>]
skipper:>package upload --path /path-to-package/mypackage-1.0.0.zip
Package uploaded successfully:[mypackage:1.0.0]
如果没有设置--repo-name,那么upload命令将使用local作为上传的仓库。
22.3. 安装
此命令用于安装软件包,如下例所示(附输出):
- 姓名
-
包安装 - 安装一个软件包。
- 概要
-
package install [--package-name] string [[--package-version] string] [[--file] file] [[--properties] string] [--release-name] string [[--platform-name] string]
- 选项
- --包名 字符串
-
要安装的软件包名称
[必填] - --包版本字符串
-
要安装的软件包版本,如果未指定则使用最新版本
[可选,默认为<none>] - --file file
-
在 YAML 文件中指定值
[可选,默认为<none>] - --属性字符串
-
安装时要覆盖的属性列表(以逗号分隔)
[可选,默认为<none>] - --release-name 字符串
-
要使用的发布版本名称
[必填] - --平台名称 字符串
-
要使用的平台名称
[可选,默认值为默认]
skipper:>package install --release-name helloworldlocal --package-name helloworld --package-version 1.0.0 --properties spec.applicationProperties.server.port=8099
Released helloworldlocal. Now at version v1.
如果未指定 package-version,则认为给定的 package-name 的最新软件包版本。
如果未指定platform-name,则使用平台名称default。
可以通过使用--properties选项提供逗号分隔的YAML字符串,也可以通过使用--file选项提供YAML文件中的属性。
23. 发布命令
跳板发布的命令包括以下内容:
23.1 列表
此命令列出最新的已部署或失败的发布。
- 姓名
-
版本发布列表 - 列出最新版本的发布状态,包括已部署或失败的状态。
- 概要
-
发布列表 [[--release-name] 字符串]
- 选项
-
- --release-name 字符串
-
按发行版名称搜索的通配符表达式
[可选,默认为<none>]
列出最新部署或失败的发布,如下例所示(带输出):
skipper:>release list
╔═══════════════╤═══════╤═════════════════════════╤════════╤═══════════╤══════════════╤════════════╤══════════════════════════════════════════════════════════════════════════════╗
║ Name │Version│ Last updated │ Status │ Package │ Package │ Platform │ Platform Status ║
║ │ │ │ │ Name │ Version │ Name │ ║
╠═══════════════╪═══════╪═════════════════════════╪════════╪═══════════╪══════════════╪════════════╪══════════════════════════════════════════════════════════════════════════════╣
║helloworldlocal│3 │Mon Oct 30 17:57:41 IST │DEPLOYED│helloworld │1.0.0 │default │[helloworldlocal.helloworld-v3], State = ║
║ │ │2017 │ │ │ │ │[helloworldlocal.helloworld-v3-0=deployed] ║
╚═══════════════╧═══════╧═════════════════════════╧════════╧═══════════╧══════════════╧════════════╧══════════════════════════════════════════════════════════════════════════════╝
23.2 状态
此命令显示发布状态。
- 姓名
-
发布状态 - 最后一个已知版本的发布状态。
- 概要
-
发布状态 [--release-name] 字符串 [[--release-version] 整数]
- 选项
-
- --release-name 字符串
-
发布名称
[必填]
[不能为空] - --release-version integer
-
特定版本的发布。
[可选,默认为<none>]
显示特定版本和版本号的status,如下例所示(带输出):
skipper:>release status --release-name helloworldlocal
╔═══════════════╤═══════════════════════════════════════════════════════════════════════════════════╗
║Last Deployed │Mon Oct 30 17:53:50 IST 2017 ║
║Status │DEPLOYED ║
║Platform Status│All applications have been successfully deployed. ║
║ │[helloworldlocal.helloworld-v2], State = [helloworldlocal.helloworld-v2-0=deployed]║
╚═══════════════╧═══════════════════════════════════════════════════════════════════════════════════╝
如果未指定--release-version,则使用最新的发布版本。
以下示例显示了带有--release-version选项的命令:
skipper:>release status --release-name helloworldlocal --release-version 1
╔═══════════════╤════════════════════════════════════════════════════════════════════════╗
║Last Deployed │Mon Oct 30 17:52:57 IST 2017 ║
║Status │DELETED ║
║Platform Status│The applications are known to the system, but is not currently deployed.║
║ │[helloworldlocal.helloworld-v1], State = [unknown] ║
╚═══════════════╧════════════════════════════════════════════════════════════════════════╝
23.3 升级
此命令升级一个软件包。
- 姓名
-
发布升级 - 升级一个发布。
- 概要
-
发布升级 [--发布名称] 字符串 [--包名称] 字符串 [[--包版本] 字符串] [[--文件] 文件] [[--属性] 字符串] [[--超时表达式] 字符串]
- 选项
-
- --release-name 字符串
-
要升级的发布版本名称
[必填] - --包名 字符串
-
用于升级的软件包名称
[必填] - --包版本字符串
-
升级时要使用的软件包版本,如果未指定则使用最新版本
[可选,默认为<none>] - --file file
-
在 YAML 文件中指定值
[可选,默认为<none>] - --属性字符串
-
【律,直接在upgrade遇到的properties set】
[可选,默认为<none>] - --超时表达式字符串
-
升级超时表达式
[可选,默认为<none>]--force force upgrade [Optional, default = false]
--app-names string application names to force upgrade. If no specific list is provided, all the apps in the packages are force upgraded [Optional, default = <none>]
升级包,如下例所示(带输出):
skipper:>release upgrade --release-name helloworldlocal --package-name helloworld --package-version 1.0.0 --properties spec.applicationProperties.server.port=9090
helloworldpcf has been upgraded. Now at version v2.
此版本的清单将如下所示:
"apiVersion": "skipper.spring.io/v1"
"kind": "SpringCloudDeployerApplication"
"metadata":
"name": "helloworld"
"type": "demo"
"spec":
"resource": "maven://org.springframework.cloud.samples:spring-cloud-skipper-samples-helloworld"
"version": "1.0.0.RELEASE"
"applicationProperties":
"server.port": "9090"
"deploymentProperties": !!null "null"
如果未指定 package-version,则认为给定 --package-name 选项的最新包版本是有效的。属性可以通过使用 --properties 选项提供逗号分隔的 YAML 字符串,也可以通过使用 --file 选项提供 YAML 文件来提供。
可以通过覆盖包版本或保持现有包版本但覆盖属性来完成升级。在覆盖包版本时,需要伴随相应的属性,因为现有的属性不会被继承。在未来版本中,我们计划引入--reuse-properties命令,该命令将当前发行版的属性传递到下一个要发布的版本中。 |
例如,如果包版本未更改但其他属性已更改,则清单将添加具有相同包版本的现有属性的新属性。
skipper:>release upgrade --release-name helloworldlocal --package-name helloworld --package-version 1.0.0 --properties spec.applicationProperties.log.level=DEBUG
helloworldpcf has been upgraded. Now at version v3.
"apiVersion": "skipper.spring.io/v1"
"kind": "SpringCloudDeployerApplication"
"metadata":
"name": "helloworld"
"type": "demo"
"spec":
"resource": "maven://org.springframework.cloud.samples:spring-cloud-skipper-samples-helloworld"
"version": "1.0.0.RELEASE"
"applicationProperties":
"server.port": "9090"
"log.level": "DEBUG"
"deploymentProperties": !!null "null"
相反,如果使用新软件包版本按如下方式执行升级,则<\/body>
skipper:>release upgrade --release-name helloworldlocal --package-name helloworld --package-version 1.0.1
helloworldpcf has been upgraded. Now at version v3.
由于软件包版本已更改,清单不会携带现有发布版本的属性。
skipper:>manifest get helloworldlocal
"apiVersion": "skipper.spring.io/v1"
"kind": "SpringCloudDeployerApplication"
"metadata":
"name": "helloworld"
"type": "demo"
"spec":
"resource": "maven://org.springframework.cloud.samples:spring-cloud-skipper-samples-helloworld"
"version": "1.0.1.RELEASE"
"applicationProperties": !!null "null"
"deploymentProperties": !!null "null"
在更新包含嵌套包的包时,在属性字符串中使用包名称作为前缀,或在YAML文档中将其用作第一级。
例如,ticktock 包含 time 和 log 应用程序,则升级 log 应用程序的命令如下:
skipper:>release upgrade --release-name ticktockskipper --package-name ticktock --file /home/mpollack/log-level-change.yml
其中log-level-change.yml包含以下内容:
log:
version: 1.1.1.RELEASE
spec:
applicationProperties:
server.port: 9999
endpoints.sensitive: false
log.level: ERROR
由于仅更改应用程序的版本是常见用例,因此包可以将版本列为values.yml文件中的顶级属性。例如,在测试包ticktock(位于此处)中,values.yml包含以下内容:
version: 1.1.0.RELEASE
spec:
applicationProperties:
log.level: DEBUG
deploymentProperties:
memory: 1024m
然后,您可以像下面的例子中展示的那样,在upgrade命令中使用--properties选项:
skipper:>release upgrade --release-name ticktockskipper --package-name ticktock --properties log.version=1.1.1.RELEASE
您可以使用--timeout-expression来更改在服务器处于该状态时等待健康应用程序的超时设置。全局覆盖设置是前面提到的spring.cloud.skipper.server.strategies.healthcheck.timeoutInMillis。有关表达式本身的更多信息,请参阅超时表达式。
skipper:>release upgrade --release-name ticktockskipper --package-name ticktock --timeout-expression=30s
使用--force选项可以部署当前已部署应用程序的新实例。换句话说,即使清单文件没有更改,Skipper也会再次升级该应用程序。当应用程序在启动时从自身获取配置信息(例如来自Spring Cloud Config Server)时需要这种行为。您可以使用选项--app-names指定哪些应用程序进行强制升级。如果您不指定任何应用程序名称,则所有应用程序都将被强制升级。您可同时指定--force和--app-names选项与--properties或--file选项。
以下示例描述了force升级:
首先,安装具有ticktock、time和log应用程序的软件包。
skipper:>package upload --repo-name local --path spring-cloud-skipper-server-core/src/test/resources/repositories/binaries/test/ticktock/ticktock-1.0.0.zip
Package uploaded successfully:[ticktock:1.0.0]
skipper:>package install --package-name ticktock --release-name a1
Released a1. Now at version v1.
skipper:>release list
╔════╤═══════╤════════════════════════════╤════════╤════════════╤═══════════════╤═════════════╤═════════════════════════════════════════════╗
║Name│Version│ Last updated │ Status │Package Name│Package Version│Platform Name│ Platform Status ║
╠════╪═══════╪════════════════════════════╪════════╪════════════╪═══════════════╪═════════════╪═════════════════════════════════════════════╣
║a1 │1 │Thu Sep 13 08:34:50 IST 2018│DEPLOYED│ticktock │1.0.0 │default │[a1.log-v1], State = [a1.log-v1-0=deployed] ║
║ │ │ │ │ │ │ │[a1.time-v1], State = [a1.time-v1-0=deployed]║
╚════╧═══════╧════════════════════════════╧════════╧════════════╧═══════════════╧═════════════╧═════════════════════════════════════════════╝
skipper:>release history --release-name a1
╔═══════╤════════════════════════════╤════════╤════════════╤═══════════════╤════════════════╗
║Version│ Last updated │ Status │Package Name│Package Version│ Description ║
╠═══════╪════════════════════════════╪════════╪════════════╪═══════════════╪════════════════╣
║1 │Thu Sep 13 08:34:50 IST 2018│DEPLOYED│ticktock │1.0.0 │Install complete║
╚═══════╧════════════════════════════╧════════╧════════════╧═══════════════╧════════════════╝
现在,即使latest包和current包之间没有明确差异,请仍然执行升级操作。
skipper:>release upgrade --release-name a1 --package-name ticktock
Package to upgrade has no difference than existing deployed/deleted package. Not upgrading.
如果升级需要强制应用于所有ticktock应用程序(适用于time和log)
skipper:>release upgrade --release-name a1 --package-name ticktock --force
a1 has been upgraded. Now at version v2.
skipper:>release history --release-name a1
╔═══════╤════════════════════════════╤════════╤════════════╤═══════════════╤════════════════════════╗
║Version│ Last updated │ Status │Package Name│Package Version│ Description ║
╠═══════╪════════════════════════════╪════════╪════════════╪═══════════════╪════════════════════════╣
║2 │Thu Sep 13 08:35:53 IST 2018│UNKNOWN │ticktock │1.0.0 │Upgrade install underway║
║1 │Thu Sep 13 08:34:50 IST 2018│DEPLOYED│ticktock │1.0.0 │Install complete ║
╚═══════╧════════════════════════════╧════════╧════════════╧═══════════════╧════════════════════════╝
skipper:>release history --release-name a1
╔═══════╤════════════════════════════╤════════╤════════════╤═══════════════╤════════════════╗
║Version│ Last updated │ Status │Package Name│Package Version│ Description ║
╠═══════╪════════════════════════════╪════════╪════════════╪═══════════════╪════════════════╣
║2 │Thu Sep 13 08:35:53 IST 2018│DEPLOYED│ticktock │1.0.0 │Upgrade complete║
║1 │Thu Sep 13 08:34:50 IST 2018│DELETED │ticktock │1.0.0 │Delete complete ║
╚═══════╧════════════════════════════╧════════╧════════════╧═══════════════╧════════════════╝
如果需要为特定的应用程序列表执行force升级,则可以使用--app-names选项。
skipper:>release upgrade --release-name a1 --package-name ticktock --force --app-names log
a1 has been upgraded. Now at version v3.
skipper:>release history a1
╔═══════╤════════════════════════════╤════════╤════════════╤═══════════════╤════════════════╗
║Version│ Last updated │ Status │Package Name│Package Version│ Description ║
╠═══════╪════════════════════════════╪════════╪════════════╪═══════════════╪════════════════╣
║3 │Thu Sep 13 08:36:51 IST 2018│DEPLOYED│ticktock │1.0.0 │Upgrade complete║
║2 │Thu Sep 13 08:35:53 IST 2018│DELETED │ticktock │1.0.0 │Delete complete ║
║1 │Thu Sep 13 08:34:50 IST 2018│DELETED │ticktock │1.0.0 │Delete complete ║
╚═══════╧════════════════════════════╧════════╧════════════╧═══════════════╧════════════════╝
23.4 回滚
此命令回滚发布。
- 姓名
-
发布回滚 - 将发布回滚到以前或特定的版本。
- 概要
-
发布回滚 [--发布名称] 字符串 [[--发布版本] 整数] [[--超时表达式] 字符串]
- 选项
-
- --release-name 字符串
-
要回滚的发布版本名称
[必填] - --release-version int
-
要回滚到的特定发行版本。如果不指定该值,则会回滚到上一个发行版本。
[可选,默认值为0] - --超时表达式字符串
-
回滚超时表达式
[可选,默认为<none>]
回滚发布到特定版本,如下例所示(带输出):
skipper:>release rollback --release-name helloworldlocal --release-version 1
helloworldlocal has been rolled back. Now at version v3.
如果未指定 --release-version,则回滚版本为上一个稳定版本(在 DELETED 或 DEPLOYED 状态中)。
您可以使用--timeout-expression来更改在服务器处于该状态时等待健康应用程序的超时设置。全局覆盖设置是前面提到的spring.cloud.skipper.server.strategies.healthcheck.timeoutInMillis。有关表达式本身的更多信息,请参阅超时表达式。
23.5. 历史
此命令显示特定版本的历史记录。
- 姓名
-
发布历史 - 列出特定版本的发布历史记录。
- 概要
-
发布历史 [--release-name] 字符串
- 选项
-
- --release-name 字符串
-
按发行版名称搜索的通配符表达式
[必填]
*(不可为空)
显示特定版本的历史记录,如下例所示(带输出):<br>
skipper:>release history --release-name helloworldlocal
╔═══════╤════════════════════════════╤════════╤════════════╤═══════════════╤════════════════╗
║Version│ Last updated │ Status │Package Name│Package Version│ Description ║
╠═══════╪════════════════════════════╪════════╪════════════╪═══════════════╪════════════════╣
║3 │Mon Oct 30 17:57:41 IST 2017│DEPLOYED│helloworld │1.0.0 │Upgrade complete║
║2 │Mon Oct 30 17:53:50 IST 2017│DELETED │helloworld │1.0.0 │Delete complete ║
║1 │Mon Oct 30 17:52:57 IST 2017│DELETED │helloworld │1.0.0 │Delete complete ║
╚═══════╧════════════════════════════╧════════╧════════════╧═══════════════╧════════════════╝
23.6. 删除
此命令会删除特定版本的最新已部署修订。
- 姓名
-
发布删除 - 删除该版本。
- 概要
-
发布删除 [--release-name] string [--delete-package]
- 选项
-
- --release-name 字符串
-
要删除的发布版本名称
[必填] - --delete-package 删除发布包
-
[可选,默认值为false]
删除特定版本的最新已部署修订,取消应用程序或应用程序的部署,如下例所示(带有输出):
skipper:>release delete --release-name helloworldlocal
helloworldlocal has been deleted.
23.7. 取消
此命令尝试取消现有的发布操作。
- 姓名
-
发布取消 - 请求取消当前的发布操作。
- 概要
-
发布取消 [--release-name] string
- 选项
-
- --release-name 字符串
-
要取消的版本名称
[必填]
此命令可用于尝试取消正在运行的发布操作(如果支持且当前处于可执行任何类型的取消状态)。例如,在升级服务器时,如果检测到新的应用程序已正常启动,则会删除旧的应用程序。在状态转换为删除旧应用程序之前,可以请求取消整个升级过程。
另一个用例是,如果新的应用程序启动失败,并且服务器在等待健康的应用程序时会超时,则可以方便地取消操作而无需等待完整的超时时间。
升级的应用程序失败时,尝试取消的示例如下:
skipper:>package install --package-name testapp --package-version 1.0.0 --release-name mytestapp
Released mytestapp. Now at version v1.
skipper:>release history --release-name mytestapp
╔═══════╤════════════════════════════╤════════╤════════════╤═══════════════╤════════════════╗
║Version│ Last updated │ Status │Package Name│Package Version│ Description ║
╠═══════╪════════════════════════════╪════════╪════════════╪═══════════════╪════════════════╣
║1 │Thu May 17 11:18:07 BST 2018│DEPLOYED│testapp │1.0.0 │Install complete║
╚═══════╧════════════════════════════╧════════╧════════════╧═══════════════╧════════════════╝
skipper:>release upgrade --package-name testapp --package-version 1.1.0 --release-name mytestapp
mytestapp has been upgraded. Now at version v2.
skipper:>release history --release-name mytestapp
╔═══════╤════════════════════════════╤════════╤════════════╤═══════════════╤════════════════════════╗
║Version│ Last updated │ Status │Package Name│Package Version│ Description ║
╠═══════╪════════════════════════════╪════════╪════════════╪═══════════════╪════════════════════════╣
║2 │Thu May 17 11:18:52 BST 2018│UNKNOWN │testapp │1.1.0 │Upgrade install underway║
║1 │Thu May 17 11:18:07 BST 2018│DEPLOYED│testapp │1.0.0 │Install complete ║
╚═══════╧════════════════════════════╧════════╧════════════╧═══════════════╧════════════════════════╝
skipper:>release status --release-name mytestapp
╔═══════════════╤═══════════════════════════════════════════════════════════════╗
║Last Deployed │Thu May 17 11:18:52 BST 2018 ║
║Status │UNKNOWN ║
║Platform Status│All apps have failed deployment. ║
║ │[mytestapp.testapp-v2], State = [mytestapp.testapp-v2-0=failed]║
╚═══════════════╧═══════════════════════════════════════════════════════════════╝
skipper:>release cancel --release-name mytestapp
Cancel request for release mytestapp sent
skipper:>release history --release-name mytestapp
╔═══════╤════════════════════════════╤════════╤════════════╤═══════════════╤═════════════════════════╗
║Version│ Last updated │ Status │Package Name│Package Version│ Description ║
╠═══════╪════════════════════════════╪════════╪════════════╪═══════════════╪═════════════════════════╣
║2 │Thu May 17 11:18:52 BST 2018│FAILED │testapp │1.1.0 │Cancelled after 39563 ms.║
║1 │Thu May 17 11:18:07 BST 2018│DEPLOYED│testapp │1.0.0 │Install complete ║
╚═══════╧════════════════════════════╧════════╧════════════╧═══════════════╧═════════════════════════╝
已经不持续:
跳过器的清单只包含一个命令:get。
24.1. 获取
此命令显示清单。
- 姓名
-
获取发布版本的清单文件-get- 获取发布的清单
- 概要
-
清单获取[--发布名称]字符串[[--发布版本]整数]
- 选项
-
- --release-name 字符串
-
发布名称
[必填]
[不能为空] - --release-version integer
-
特定版本发布。
[可选,默认为<none>]
命令manifest get显示用于特定版本的清单,如下例所示(带输出):
skipper:>manifest get --release-name helloworldk8s
---
# Source: template.yml
apiVersion: skipper.spring.io/v1
kind: SpringCloudDeployerApplication
metadata:
name: helloworld-docker
spec:
resource: docker:springcloud/spring-cloud-skipper-samples-helloworld:1.0.0.RELEASE
applicationProperties:
deploymentProperties:
spring.cloud.deployer.kubernetes.createNodePort: 32123
25. 平台命令
跳机应用平台只有一个响字: list.
25.1 列表
此命令列出平台。
- 姓名
-
平台列表 - 列出平台
- 概要
-
平台列表
命令platform list显示所有可用部署平台账户的列表,如以下示例所示(带输出):
skipper:>platform list
╔════════╤════════════╤══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╗
║ Name │ Type │ Description ║
╠════════╪════════════╪══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╣
║default │local │ShutdownTimeout = [30], EnvVarsToInherit = [TMP,LANG,LANGUAGE,LC_.*,PATH], JavaCmd = ║
║ │ │[/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home/jre/bin/java], WorkingDirectoriesRoot = [/var/folders/t3/qf1wkpwj4lgd9gjccwk0wr7h0000gp/T], ║
║ │ │DeleteFilesOnExit = [true] ║
║cf-dev │cloudfoundry│org = [scdf-ci], space = [ilaya-space], url = [https://api.run.pivotal.io] ║
║minikube│kubernetes │master url = [https://192.168.99.101:8443/], namespace = [default], api version = [v1] ║
╚════════╧════════════╧══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╝
26. 仓库命令
跳过器的仓库命令包括以下内容:
26.1 列表
此命令列出存储库。
- 姓名
-
仓库列表 - 列出软件包仓库
- 概要
-
仓库列表
列出存储库,如下例所示(带输出):
skipper:>repo list
╔════════════╤═══════════════════════════════════════════════════════════╤═════╤═════╗
║ Name │ URL │Local│Order║
╠════════════╪═══════════════════════════════════════════════════════════╪═════╪═════╣
║experimental│https://skipper-repository.cfapps.io/repository/experimental│false│0 ║
║local │https://10.55.13.45:7577 │true │1 ║
╚════════════╧═══════════════════════════════════════════════════════════╧═════╧═════╝
如果存储库是本地的,则它由Skipper的数据库支持,您可以将包上传到该存储库。如果不是本地的,则它是远程存储库,您只能读取包。远程存储库中的包是在Skipper控制之外更新的。1.0版本仅在服务器启动时轮询远程存储库的内容。有关添加对远程存储库元数据动态更新的支持的更多信息,请关注问题GH-262。
27. 跳过器服务器命令
跳伞者的包命令包括以下内容:<br>
27.1 配置
此命令将配置shell以引用Skipper Server的HTTP API端点。
- 姓名
-
跳过器配置 - 配置 Spring Cloud Skipper REST 服务器以使用。
- 概要
-
跳过配置 [[--uri] 字符串] [[--username] 字符串] [[--password] 字符串] [[--credentials-provider-command] 字符串] [--skip-ssl-validation]
- 选项
-
- --uri string
-
Spring Cloud Skipper 的 REST 端点位置
[可选,默认值为localhost:7577/api] - --用户名 字符串
-
用于对管理员REST端点进行身份验证访问的用户名
[可选,默认为<none>] - --password 字符串
-
用于对管理员REST端点进行身份验证访问的密码(仅与用户名一起有效)
[可选,默认为<none>] - --credentials-provider-command 字符串
-
一个用于输出用于身份验证的HTTP凭据的命令
[可选,默认为<none>] - --跳过SSL验证
-
接受 any SSL certificate (even self-signed)
[可选,默认为<none>]
配置shell,如以下示例所示:
skipper:>skipper config --uri https://localhost:8443/api
使用OAuth时,可以使用用户名和密码选项。
在 Skipper Shell 内,您还可以提供凭据,如下例所示:
skipper:> skipper config --uri https://localhost:7577/api --username my_username --password my_password
有关更多信息,请参阅[配置安全性]部分。
28. 通用用法
本节包含有关命令的通用说明。
28.1 超时表达式
-
使用毫秒作为默认单位的常规长表示形式
-
标准ISO-8601格式用于java.util.Duration
-
一个更易读的格式,其中值和单位是耦合的(例如10s表示10秒)
指定会话超时时间为30秒,30、PT30S 和 30s 都是等效的。读取超时时间可以以以下任何一种形式指定:500、PT0.5S 和 500ms。
您也可以使用任何支持的单位。这些是:<br/>
-
纳秒的缩写
-
毫秒的ms
-
秒为单位
-
分钟 m
-
小时用 h 表示
-
每天