This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.1.4. 开发人员CLI命令
1.4.1. 基本CLI命令 复制链接链接已复制到粘贴板!
1.4.1.1. explain 复制链接链接已复制到粘贴板!
显示特定资源的文档。
示例:显示 pod 的文档
oc explain pods
$ oc explain pods
1.4.1.2. login 复制链接链接已复制到粘贴板!
登录OpenShift Container Platform服务器并保存登录信息以供后续使用。
示例:交互式登录
oc login
$ oc login
示例:指定用户名进行登陆
oc login -u user1
$ oc login -u user1
1.4.1.3. new-app 复制链接链接已复制到粘贴板!
通过指定源代码,模板或镜像来创建新应用程序。
示例:从本地Git仓库创建新应用程序
oc new-app .
$ oc new-app .
示例:从远程Git仓库创建新应用程序
oc new-app https://github.com/sclorg/cakephp-ex
$ oc new-app https://github.com/sclorg/cakephp-ex
示例:从远程的一个私有Git仓库创建新应用程序
oc new-app https://github.com/youruser/yourprivaterepo --source-secret=yoursecret
$ oc new-app https://github.com/youruser/yourprivaterepo --source-secret=yoursecret
1.4.1.4. new-project 复制链接链接已复制到粘贴板!
创建一个新项目,并切换到这个项目作为配置中的默认项目。
示例:创建一个新项目
oc new-project myproject
$ oc new-project myproject
1.4.1.5. project 复制链接链接已复制到粘贴板!
切换到另一个项目,并使其成为配置中的默认项目。
示例:切换到另外一个项目
oc project test-project
$ oc project test-project
1.4.1.6. projects 复制链接链接已复制到粘贴板!
显示服务器上当前活动项目和现有项目的信息。
示例:列出所有项目
oc projects
$ oc projects
1.4.1.7. status 复制链接链接已复制到粘贴板!
显示当前项目的概况信息。
示例:显示当前项目的状态
oc status
$ oc status
1.4.2. 构建和部署CLI命令 复制链接链接已复制到粘贴板!
1.4.2.1. cancel-build 复制链接链接已复制到粘贴板!
取消正在运行,待处理或新的构建。
示例:取消一个构建
oc cancel-build python-1
$ oc cancel-build python-1
示例:从 python
构建配置中取消所有待处理的构建
oc cancel-build buildconfig/python --state=pending
$ oc cancel-build buildconfig/python --state=pending
1.4.2.2. import-image 复制链接链接已复制到粘贴板!
从镜像仓库中导入最新的 tag 和镜像信息。
示例:导入最新的镜像信息
oc import-image my-ruby
$ oc import-image my-ruby
1.4.2.3. new-build 复制链接链接已复制到粘贴板!
从源代码创建新构建配置。
示例:从本地 Git 仓库创建构建配置
oc new-build .
$ oc new-build .
示例:从远程 Git 仓库创建构建配置
oc new-build https://github.com/sclorg/cakephp-ex
$ oc new-build https://github.com/sclorg/cakephp-ex
1.4.2.4. rollback 复制链接链接已复制到粘贴板!
将应用程序还原回以前的部署。
示例:回滚到上次成功部署
oc rollback php
$ oc rollback php
示例:回滚到一个特定版本
oc rollback php --to-version=3
$ oc rollback php --to-version=3
1.4.2.5. rollout 复制链接链接已复制到粘贴板!
开始一个新的 rollout 操作,查看它的状态或历史信息,或回滚到应用程序的一个以前的版本。
示例:回滚到上次成功部署
oc rollout undo deploymentconfig/php
$ oc rollout undo deploymentconfig/php
示例:使用最新状态启动一个新的部署 rollout
oc rollout latest deploymentconfig/php
$ oc rollout latest deploymentconfig/php
1.4.2.6. start-build 复制链接链接已复制到粘贴板!
从构建配置启动构建或复制现有构建。
示例:从指定的构建配置启动构建
oc start-build python
$ oc start-build python
示例:从以前的一个构建版本开始进行构建
oc start-build --from-build=python-1
$ oc start-build --from-build=python-1
示例:为当前构建设置要使用的环境变量
oc start-build python --env=mykey=myvalue
$ oc start-build python --env=mykey=myvalue
1.4.2.7. tag 复制链接链接已复制到粘贴板!
将现有镜像标记为镜像流。
示例:配置ruby
镜像的latest
tag 指向2.0
tag
oc tag ruby:latest ruby:2.0
$ oc tag ruby:latest ruby:2.0
1.4.3. 应用程序管理CLI命令 复制链接链接已复制到粘贴板!
1.4.3.1. annotate 复制链接链接已复制到粘贴板!
更新一个或多个资源上的注解。
示例:向路由添加注解
oc annotate route/test-route haproxy.router.openshift.io/ip_whitelist="192.168.1.10"
$ oc annotate route/test-route haproxy.router.openshift.io/ip_whitelist="192.168.1.10"
示例:从路由中删除注解
oc annotate route/test-route haproxy.router.openshift.io/ip_whitelist-
$ oc annotate route/test-route haproxy.router.openshift.io/ip_whitelist-
1.4.3.2. apply 复制链接链接已复制到粘贴板!
通过文件名或标准输入(stdin)以JSON或YAML格式将配置应用于资源。
示例:将 pod.json
中的配置应用到 pod
oc apply -f pod.json
$ oc apply -f pod.json
1.4.3.3. autoscale 复制链接链接已复制到粘贴板!
自动缩放部署或复制控制器。
示例:自动缩放至最少两个最多五个 pod
oc autoscale deploymentconfig/parksmap-katacoda --min=2 --max=5
$ oc autoscale deploymentconfig/parksmap-katacoda --min=2 --max=5
1.4.3.4. create 复制链接链接已复制到粘贴板!
通过文件名或标准输入(stdin)使用 JSON 或 YAML 格式创建一个资源。
示例:使用 pod.json
中的内容创建一个 pod
oc create -f pod.json
$ oc create -f pod.json
1.4.3.5. delete 复制链接链接已复制到粘贴板!
删除一个资源。
示例:删除名为 parksmap-katacoda-1-qfqz4
的 pod
oc delete pod/parksmap-katacoda-1-qfqz4
$ oc delete pod/parksmap-katacoda-1-qfqz4
示例:删除所有带有 app=parksmap-katacoda
标签的 pod
oc delete pods -l app=parksmap-katacoda
$ oc delete pods -l app=parksmap-katacoda
1.4.3.6. describe 复制链接链接已复制到粘贴板!
获得有关一个特定对象的详细信息。
示例:描述名为 example
的部署
oc describe deployment/example
$ oc describe deployment/example
示例:描述所有 pod
oc describe pods
$ oc describe pods
1.4.3.7. edit 复制链接链接已复制到粘贴板!
编辑一个资源。
示例:使用默认编辑器编辑部署
oc edit deploymentconfig/parksmap-katacoda
$ oc edit deploymentconfig/parksmap-katacoda
示例:使用不同的编辑器编辑部署
OC_EDITOR="nano" oc edit deploymentconfig/parksmap-katacoda
$ OC_EDITOR="nano" oc edit deploymentconfig/parksmap-katacoda
示例:编辑 JSON 格式的部署
oc edit deploymentconfig/parksmap-katacoda -o json
$ oc edit deploymentconfig/parksmap-katacoda -o json
1.4.3.8. expose 复制链接链接已复制到粘贴板!
以外部方式公开服务作为路由。
示例:开放一个服务
oc expose service/parksmap-katacoda
$ oc expose service/parksmap-katacoda
示例:开放服务并指定主机名
oc expose service/parksmap-katacoda --hostname=www.my-host.com
$ oc expose service/parksmap-katacoda --hostname=www.my-host.com
1.4.3.9. get 复制链接链接已复制到粘贴板!
显示一个或多个资源。
示例:列出 default
命名空间中的 pod
oc get pods -n default
$ oc get pods -n default
示例:获取 JSON 格式的 python
部署详情
oc get deploymentconfig/python -o json
$ oc get deploymentconfig/python -o json
1.4.3.10. label 复制链接链接已复制到粘贴板!
更新一个或多个资源上的标签。
示例:更新 python-1-mz2rf
pod,标签 status
设置为 unhealthy
oc label pod/python-1-mz2rf status=unhealthy
$ oc label pod/python-1-mz2rf status=unhealthy
1.4.3.11. scale 复制链接链接已复制到粘贴板!
设置复制控制器或部署所需的副本数。
示例:将 ruby-app
部署扩展为三个 pod
oc scale deploymentconfig/ruby-app --replicas=3
$ oc scale deploymentconfig/ruby-app --replicas=3
1.4.3.12. secrets 复制链接链接已复制到粘贴板!
管理项目中的 secret
示例:default
服务账户(service account)使用 my-pull-secret
作为 image pull 操作的 secret
oc secrets link default my-pull-secret --for=pull
$ oc secrets link default my-pull-secret --for=pull
1.4.3.13. serviceaccounts 复制链接链接已复制到粘贴板!
获取分配给服务帐户的令牌或,或为服务帐户创建新令牌或kubeconfig
文件。
示例:获取分配给default
服务帐户的令牌
oc serviceaccounts get-token default
$ oc serviceaccounts get-token default
1.4.3.14. set 复制链接链接已复制到粘贴板!
配置现有应用资源。
示例:设置构建配置上的 secret 的名称
oc set build-secret --source buildconfig/mybc mysecret
$ oc set build-secret --source buildconfig/mybc mysecret
1.4.4. 调试CLI命令 复制链接链接已复制到粘贴板!
1.4.4.1. attach 复制链接链接已复制到粘贴板!
为正在运行的容器附加一个 shell。
示例:从 pod python-1-mz2rf
获取python
容器的输出信息
oc attach python-1-mz2rf -c python
$ oc attach python-1-mz2rf -c python
1.4.4.2. cp 复制链接链接已复制到粘贴板!
将文件和目录复制到容器或从容器中复制。
示例:将文件从 python-1-mz2rf
pod 复制到本地文件系统
oc cp default/python-1-mz2rf:/opt/app-root/src/README.md ~/mydirectory/.
$ oc cp default/python-1-mz2rf:/opt/app-root/src/README.md ~/mydirectory/.
1.4.4.3. debug 复制链接链接已复制到粘贴板!
启动一个 shell 以调试正在运行的应用程序。
示例:调试python
部署
oc debug deploymentconfig/python
$ oc debug deploymentconfig/python
1.4.4.4. exec 复制链接链接已复制到粘贴板!
在容器中执行命令。
示例:从 pod python-1-mz2rf
的python
容器中执行ls
命令
oc exec python-1-mz2rf -c python ls
$ oc exec python-1-mz2rf -c python ls
1.4.4.5. logs 复制链接链接已复制到粘贴板!
检索特定构建、构建配置、部署或 Pod 的日志输出。
示例:从 python
部署中获得最新的日志
oc logs -f deploymentconfig/python
$ oc logs -f deploymentconfig/python
1.4.4.6. port-forward 复制链接链接已复制到粘贴板!
将一个或多个本地端口转发到一个 pod。
示例:在本地侦听端口 8888
并将其数据转发到 pod 的端口 5000
oc port-forward python-1-mz2rf 8888:5000
$ oc port-forward python-1-mz2rf 8888:5000
1.4.4.7. proxy 复制链接链接已复制到粘贴板!
运行到Kubernetes API服务器的代理。
示例:在端口8011
上运行到API服务器的代理,由./local/www/
提供静态内容
oc proxy --port=8011 --www=./local/www/
$ oc proxy --port=8011 --www=./local/www/
1.4.4.8. rsh 复制链接链接已复制到粘贴板!
打开到容器的远程shell会话。
示例:在 python-1-mz2rf
pod 中的第一个容器上打开一个 shell 会话
oc rsh python-1-mz2rf
$ oc rsh python-1-mz2rf
1.4.4.9. rsync 复制链接链接已复制到粘贴板!
将目录的内容复制到正在运行的 pod 容器或从容器中复制。rsync
命令只复制您的操作系统中已更改的文件。
示例:将本地目录中的文件与 pod 目录同步
oc rsync ~/mydirectory/ python-1-mz2rf:/opt/app-root/src/
$ oc rsync ~/mydirectory/ python-1-mz2rf:/opt/app-root/src/
1.4.4.10. run 复制链接链接已复制到粘贴板!
创建并运行一个特定镜像。默认情况下,这会创建一个DeploymentConfig来管理创建的容器。
示例:启动具有三个副本的perl
镜像实例
oc run my-test --image=perl --replicas=3
$ oc run my-test --image=perl --replicas=3
1.4.4.11. wait 复制链接链接已复制到粘贴板!
等待一个或多个资源上的特定条件。
此命令是实验性的,如有变更,恕不另行通知。
示例:等待 python-1-mz2rf
pod 被删除
oc wait --for=delete pod/python-1-mz2rf
$ oc wait --for=delete pod/python-1-mz2rf
1.4.5. 高级开发人员CLI命令 复制链接链接已复制到粘贴板!
1.4.5.1. api-resources 复制链接链接已复制到粘贴板!
显示服务器支持的完整API资源列表。
示例:列出支持的API资源
oc api-resources
$ oc api-resources
1.4.5.2. api-versions 复制链接链接已复制到粘贴板!
显示服务器支持的完整API版本列表。
示例:列出支持的API版本
oc api-versions
$ oc api-versions
1.4.5.3. auth 复制链接链接已复制到粘贴板!
检查权限并协调RBAC角色。
示例:检查当前用户是否可以读取 pod 日志
oc auth can-i get pods --subresource=log
$ oc auth can-i get pods --subresource=log
示例:从一个文件协调RBAC角色和权限
oc auth reconcile -f policy.json
$ oc auth reconcile -f policy.json
1.4.5.4. cluster-info 复制链接链接已复制到粘贴板!
显示 master 和集群服务的地址。
示例:显示集群信息
oc cluster-info
$ oc cluster-info
1.4.5.5. convert 复制链接链接已复制到粘贴板!
将YAML或JSON配置文件转换为一个不同的API版本并打印到标准输出(stdout)。
示例:将pod.yaml
转换到最新版本
oc convert -f pod.yaml
$ oc convert -f pod.yaml
1.4.5.6. extract 复制链接链接已复制到粘贴板!
提取配置映射或 secret 的内容。配置映射或 secret 中的每个密钥都被创建为拥有密钥名称的独立文件。
示例:将 ruby-1-ca
配置映射的内容下载到当前目录
oc extract configmap/ruby-1-ca
$ oc extract configmap/ruby-1-ca
示例:将 ruby-1-ca
配置映射的内容输出到 stdout
oc extract configmap/ruby-1-ca --to=-
$ oc extract configmap/ruby-1-ca --to=-
1.4.5.7. idle 复制链接链接已复制到粘贴板!
把可扩展资源设置为空闲。一个空闲的服务在接收到数据时将自动变为非空闲状态,或使用oc scale
命令手动把空闲服务变为非空闲。
示例:把 ruby-app
服务变为空闲状态
oc idle ruby-app
$ oc idle ruby-app
1.4.5.8. image 复制链接链接已复制到粘贴板!
管理OpenShift Container Platform集群中的镜像。
示例:把一个镜像复制到另外一个 tag
oc image mirror myregistry.com/myimage:latest myregistry.com/myimage:stable
$ oc image mirror myregistry.com/myimage:latest myregistry.com/myimage:stable
1.4.5.9. observe 复制链接链接已复制到粘贴板!
观察资源的变化并对其采取措施。
示例:观察服务的更改
oc observe services
$ oc observe services
1.4.5.10. patch 复制链接链接已复制到粘贴板!
使用JSON或YAML格式的策略合并补丁更新对象的一个或多个字段。
示例:将节点node1
的spec.unschedulable
字段更新为true
oc patch node/node1 -p '{"spec":{"unschedulable":true}}'
$ oc patch node/node1 -p '{"spec":{"unschedulable":true}}'
如果需要使用自定义资源定义,则必须在命令中包含--type merge
选项。
1.4.5.11. policy 复制链接链接已复制到粘贴板!
管理授权策略。
示例:将edit
角色添加给当前项目的user1
用户
oc policy add-role-to-user edit user1
$ oc policy add-role-to-user edit user1
1.4.5.12. process 复制链接链接已复制到粘贴板!
将模板处理为资源列表。
示例:将template.json
转换为资源列表并传递给oc create
oc process -f template.json | oc create -f -
$ oc process -f template.json | oc create -f -
1.4.5.13. registry 复制链接链接已复制到粘贴板!
管理OpenShift Container Platform中集成的 registry。
示例:显示集成的 registry 的信息
oc registry info
$ oc registry info
1.4.5.14. replace 复制链接链接已复制到粘贴板!
根据指定配置文件的内容修改现有对象。
示例:使用pod.json
的内容更新 Pod
oc replace -f pod.json
$ oc replace -f pod.json
1.4.6. 设置CLI命令 复制链接链接已复制到粘贴板!
1.4.6.1. completion 复制链接链接已复制到粘贴板!
输出指定shell的shell完成代码。
示例:显示Bash的完成代码
oc completion bash
$ oc completion bash
1.4.6.2. config 复制链接链接已复制到粘贴板!
管理客户端配置文件。
示例:显示当前配置
oc config view
$ oc config view
示例:切换到另外一个上下文
oc config use-context test-context
$ oc config use-context test-context
1.4.6.3. logout 复制链接链接已复制到粘贴板!
退出当前会话。
示例:结束当前会话
oc logout
$ oc logout
1.4.6.4. whoami 复制链接链接已复制到粘贴板!
显示有关当前会话的信息。
示例:显示当前已验证的用户
oc whoami
$ oc whoami
1.4.7. 其他开发人员CLI命令 复制链接链接已复制到粘贴板!
1.4.7.1. help 复制链接链接已复制到粘贴板!
显示CLI的常规帮助信息和可用命令列表。
示例:显示可用命令
oc help
$ oc help
示例:显示new-project
命令的帮助信息
oc help new-project
$ oc help new-project
1.4.7.2. plugin 复制链接链接已复制到粘贴板!
列出用户PATH
中的可用插件。
示例:列出可用的插件
oc plugin list
$ oc plugin list
1.4.7.3. version 复制链接链接已复制到粘贴板!
显示oc
客户端和服务器版本。
示例:显示版本信息
oc version
$ oc version
对于集群管理员,还会显示OpenShift Container Platform服务器版本。