Add Mount

less than 1 minute read


layout: single title: “samba mount in pod” categories: database tags: database samba mount pod collection: 2025 classes: wide

toc: true toc_label: “Content Outline” toc_icon: “cog” toc_sticky: true


samba mount in pod

apiVersion: v1
kind: Pod
metadata:
  name: my
spec:
  initContainers:
    - name: mount-samba
      image: alpine:latest
      command: ["/bin/sh", "-c"]
      args:
        - |
          mkdir -p /mnt/samba
          echo "Trying to mount Samba..."
          apk add cifs-utils --no-cache || true
          mount -t cifs //10.1.2.130/public /mnt/samba -o guest,vers=3.0,ro,soft || echo "Samba mount failed, continue..."
          if mountpoint -q /mnt/samba; then
            echo "Mounted successfully."
            touch /tmp/samba-ready
          else
            echo "Mount failed."
          fi
      securityContext:
        privileged: true  # 必须加,否则没权限执行 mount
      volumeMounts:
        - name: samba-mount
          mountPath: /mnt/samba
          mountPropagation: Bidirectional
        - name: status-volume
          mountPath: /tmp

  containers:
    - name: my
      image: alpine:latest
      command: ["/bin/sh", "-c"]
      args:
        - |
          if [ -f /tmp/samba-ready ]; then
            echo "Samba mounted successfully."
          else
            echo "Skipping Samba, proceeding anyway."
          fi
          sleep 3600
      securityContext:
        privileged: true
      volumeMounts:
        - name: samba-mount
          mountPath: /mnt/samba
          mountPropagation: Bidirectional
        - name: status-volume
          mountPath: /tmp

  volumes:
    - name: samba-mount
      emptyDir: {}      # 动态挂载目录,而非PVC
    - name: status-volume
      emptyDir: {}

Updated:

Comments