李诚云原生技术分享

------------恢复内容开始------------

1、第一新一代的应用编排出来之后打镜像,对应的编排文件如下

整个文件的编排目录如下,我们在改目录下创建一个dockfile文件

 

 Dockerfile文件的内容如下

 

1.基于行内的jdk镜像

把当前宿主机器中的demo文件夹拷贝到容器中,默认容器的workdir是当前的根目录

 接下来进行镜像的编排操作

 

 这里使用到了一个概念:https://www.cnblogs.com/sammyliu/p/10083659.html

在上面的docker镜像中指定当前镜像启动之后在ocp集群中镜像启动之后对应的pod要以root用户启动,默认情况仅仅只在dockfile中指定USER root是远远不够的

Openshift平台中,当在容器内需要用到root权限时,仅仅在dockerfile中指定user为root还是不够的, https://www.pianshen.com/article/85621206279/

具体参考博客:https://www.cnblogs.com/sammyliu/p/10083659.html

这里使用的到的是几个命令和概念

 

 这里和控制器用户ServicAccount服务账户相关,用来指定pod到底是以啥具体用户执行、能够操作宿主机器上面的权限资源

Service account:服务账户。这是跟一个项目关联的特殊系统用户,每个用户被一个 ServiceAccount 对象表示,通常是指 pod 中运行主进程的用户

pod 中的用户(serviceaccount)访问pod内和宿主机上操作系统资源,由 scc(security context constraints)进行控制。

pod 中的应用除了有访问 OpenShift API 和内部镜像仓库之外,还有一些系统资源访问要求。比如:

  • 要求以任意用户甚至是 root 来运行 pod 中的主进程
  • 要求访问宿主机上的文件系统
  • 要求访问宿主机上的网络

对于这些操作系统资源的访问权限,OpenShift 利用 scc 来进行控制。这就要求:

  • 在 scc 中进行权限控制。这部分在后面介绍。
  • 在 servie account 和 sa 之间建立联系。每个 scc 都有指定使用它的用户列表。所有通过身份认证了的用户都只在 restricted 这个 scc 的用户列表之中,包括 service account。因此,pod 默认使用的是 restricted scc。要使它使用其它的scc,就要将它的 service account user 加入到要使用的 scc 的用户列表之中。这在 scc 部分具体介绍。

 

前面说过,SCC 用于控制访问系统资源的权限,那说明只有  service account  才需要使用 scc。没在文档中看到自然人用户 user 使用 scc 的例子。

 

 上面表示的几个点是最重要的,我们在dockfile中指定如果指定了任意用户的uid,这里我们只需要在openshift的编排文件中指定scc为anyuid就可以了,上面的编排文件中我在dockerfile中指定USER root指定用户为root,这里在openshift的编排文件中指定scc为anyuid就可以使用root的uid来启动容器了

OpenShift 默认创建了几个典型的 scc,pod 默认使用的是 restricted scc

我们来看下

 

 

 

------------恢复内容结束------------

posted on   luzhouxiaoshuai  阅读(57)  评论(0编辑  收藏  举报

编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示