# Copyright 2018 The Kubernetes Authors All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # The Dockerfile and other source for this daemonset are in # https://github.com/GoogleCloudPlatform/container-engine-accelerators/tree/master/nvidia-driver-installer/minikube apiVersion: apps/v1 kind: DaemonSet metadata: name: nvidia-driver-installer namespace: kube-system labels: k8s-app: nvidia-driver-installer kubernetes.io/minikube-addons: nvidia-driver-installer addonmanager.kubernetes.io/mode: Reconcile spec: selector: matchLabels: k8s-app: nvidia-driver-installer updateStrategy: type: RollingUpdate template: metadata: labels: k8s-app: nvidia-driver-installer spec: tolerations: - key: "nvidia.com/gpu" effect: "NoSchedule" operator: "Exists" volumes: - name: dev hostPath: path: /dev - name: nvidia-install-dir-host hostPath: path: /home/kubernetes/bin/nvidia - name: root-mount hostPath: path: / initContainers: - image: {{.CustomRegistries.NvidiaDriverInstaller | default .ImageRepository | default .Registries.NvidiaDriverInstaller }}{{.Images.NvidiaDriverInstaller}} name: nvidia-driver-installer resources: requests: cpu: 0.15 securityContext: privileged: true env: - name: NVIDIA_INSTALL_DIR_HOST value: /home/kubernetes/bin/nvidia - name: NVIDIA_INSTALL_DIR_CONTAINER value: /usr/local/nvidia - name: ROOT_MOUNT_DIR value: /root - name: NVIDIA_DRIVER_VERSION value: "510.60.02" # hack to not have to change https://github.com/GoogleCloudPlatform/container-engine-accelerators/blob/master/nvidia-driver-installer/minikube/entrypoint.sh command: ["/bin/sh"] args: ["-c", "sed -i 's|make modules_prepare|&;ln -s /root/lib/modules/${KERNEL_VERSION}/Module.symvers|' /entrypoint.sh;exec /entrypoint.sh"] volumeMounts: - name: nvidia-install-dir-host mountPath: /usr/local/nvidia - name: dev mountPath: /dev - name: root-mount mountPath: /root containers: - image: "{{default "registry.k8s.io" .ImageRepository}}/{{.Images.Pause}}" name: pause