oc new-app 可以创建一个 Deployment 而不是一个 DeploymentConfig 吗?

Pau*_*ett 5 openshift

oc new-app始终创建一个 DeploymentConfig。是否可以选择创建 Deployment 而不是 DeploymentConfig?

为什么?DeploymentConfig 是一种专有的传统 Red Hat 资源类型。我更喜欢现代跨平台行业标准部署。

Sim*_* K. 6

oc new-app始终创建一个 DeploymentConfig。是否可以选择创建 Deployment 而不是 DeploymentConfig?

的当前版本oc已经创建部署很长一段时间了:

$ oc new-app --docker-image=<IMAGE> --name=my-application
--> Found container image [..]

    * An image stream tag will be created as "my-application:latest" that will track this image

--> Creating resources ...
    imagestream.image.openshift.io "my-application" created
    deployment.apps "my-application" created
    service "my-application" created
--> Success
    Application is not exposed. You can expose services to the outside world by executing one or more of the commands below:
     'oc expose service/my-application'
    Run 'oc status' to view your app.
$ oc get deployment
NAME             READY   UP-TO-DATE   AVAILABLE   AGE
my-application   1/1     1            1           7s
$ oc get deploymentconfig
No resources found in simon namespace.
Run Code Online (Sandbox Code Playgroud)

所以你应该更新你的oc客户端,因为你似乎在使用旧版本(我上面的输出是 4.6 客户端)。

DeploymentConfig仍然可以通过使用该--as-deployment-config选项来强制 创建 a 的旧行为:

$ oc new-app --docker-image=<IMAGE> --name=my-application --as-deployment-config
Run Code Online (Sandbox Code Playgroud)

请注意,如果您想使用触发器、自动回滚、生命周期挂钩或自定义策略(特定于 DeploymentConfigs 的功能)等功能,DeploymentConfigs 仍然有其一席之地

  • 啊哈...我又回到了 openshift-clients-4.3.0-201910250623-88-g6a937dfe。谢谢西蒙。 (2认同)