×

您可以使用/dev/fuse 设备配置您的 Pod 以访问更快的构建。

在非特权 Pod 上配置 /dev/fuse

作为虚拟文件系统的替代方案,您可以将/dev/fuse 设备配置到io.kubernetes.cri-o.Devices 注释以在非特权 Pod 中访问更快的构建。使用/dev/fuse 安全、高效且可扩展,并允许非特权用户挂载覆盖文件系统,就像非特权 Pod 具有特权一样。

步骤
  1. 创建 Pod。

    $ oc exec -ti no-priv -- /bin/bash
    $ cat >> Dockerfile <<EOF
    FROM registry.access.redhat.com/ubi9
    EOF
    $ podman build .
  2. 通过将/dev/fuse 设备添加到io.kubernetes.cri-o.Devices 注释来实现/dev/fuse

    io.kubernetes.cri-o.Devices: "/dev/fuse"

    例如

    apiVersion: v1
    kind: Pod
    metadata:
      name: podman-pod
      annotations:
        io.kubernetes.cri-o.Devices: "/dev/fuse"
  3. 在您的 Pod 规范中配置/dev/fuse 设备。

    spec:
      containers:
      - name: podman-container
        image: quay.io/podman/stable
        args:
        - sleep
        - "1000000"
        securityContext:
          runAsUser: 1000