调试CrashLoopBackOff以获取在openshift原点中以root身份运行的映像

时间:2016-08-09 07:15:00

标签: openshift-origin

我想在一个开放的移位原点上启动一个ubuntu容器。我有我的本地注册表,并从中获取成功。容器启动但立即抛出CrashLoopBackOff并停止。我以root身份运行的ubuntu映像

Started container with docker id 28250a528e69
Created container with docker id 28250a528e69
Successfully pulled image "ns1.myregistry.com:5000/ubuntu@sha256:6d9a2a1bacdcb2bd65e36b8f1f557e89abf0f5f987ba68104bcfc76103a08b86"
pulling image "ns1.myregistry.com:5000/ubuntu@sha256:6d9a2a1bacdcb2bd65e36b8f1f557e89abf0f5f987ba68104bcfc76103a08b86"
Error syncing pod, skipping: failed to "StartContainer" for "ubuntu" with CrashLoopBackOff: "Back-off 5m0s restarting failed container=ubuntu pod=ubuntu-2-suy6p_testproject(69af5cd9-5dff-11e6-940e-0800277bbed5)"

容器以受限制的权限运行。我不知道如何使用特权模式启动pod,因此编辑我的受限模式如下,以便我的图像具有root访问权限

> NAME         PRIV      CAPS      SELINUX    RUNASUSER   FSGROUP   
> SUPGROUP   PRIORITY   READONLYROOTFS   VOLUMES restricted   true     
> []        RunAsAny   RunAsAny    RunAsAny   RunAsAny   <none>    
> false            [configMap downwardAPI emptyDir persistentVolumeClaim
> secret]

但我还是无法成功启动我的容器?

1 个答案:

答案 0 :(得分:0)

有两个命令可用于crashloopbackoff调试。

.then会创建一个非常相似的pod并执行它。您可以查看启动它的不同选项,其中一些处理SCC选项。你也可以使用dc,rc,is,大多数东西可以压掉pod。

return gapi.auth2.init({ client_id: this._clientId, scope: 'profile' }).then(); // Auth2 only returns a promise, when we chained into the PromiseLike object once. 将从最后一次运行pod中检索日志,这些日志也可能包含有用的信息。