Openshift (Origin) 使图像能够与 ROOT 用户一起运行

mur*_*kas 3 elasticsearch openshift docker minishift

我正在尝试使用 openshift(使用 minishift)运行简单的 elk 容器。我试图运行的图像是这个麋鹿图像。在将映像部署到 openshift 期间,它会发出以下警告:

映像 sebp/elk 以 root 用户身份运行,这可能是您的集群管理员不允许的。

我忽略此错误并使用此映像创建部署。在该 pod 尝试启动容器后,但失败并显示以下错误:

启动定期命令调度程序 cron

cron:无法打开或创建/var/run/crond.pid:权限被拒绝...失败!

chown:更改“/var/lib/elasticsearch”的所有权:不允许操作

我认为这与 root 用户警告有关,然后尝试了这些步骤Enable Images to Run with USER in the Dockerfile and Grant a Service Account Access to the Privileged SCC 。他们都失败了,并出现以下错误:

Murats-MacBook-Pro-2:~ murat$ oc adm policy add-scc-to-group anyuid system:authenticated

来自服务器的错误(禁止):用户“系统”无法在集群范围内获取 securitycontextconstraints.security.openshift.io

Murats-MacBook-Pro-2:~ murat$ oc adm policy add-scc-to-user anyuid system:serviceaccount:elk:elk

来自服务器的错误(禁止):用户“系统”无法在集群范围内获取 securitycontextconstraints.security.openshift.io

非常感谢。

brg*_*brg 5

我们有针对这个特定用例的anyuid插件。考虑使用它。

要使用它,请运行以下命令

minishift addon apply anyuid
Run Code Online (Sandbox Code Playgroud)

要了解有关插件的更多信息,请在此处查看Minishift 插件