aind.yaml 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. # aind manifest for Kubernetes
  2. #
  3. # See README.md for the clusters known to work with.
  4. #
  5. # NOTE: replace "ghcr.io/aind-containers/aind:latest" with "ghcr.io/aind-containers/aind@sha256:<digest>" for reproducible deployment.
  6. ---
  7. apiVersion: apps/v1
  8. kind: Deployment
  9. metadata:
  10. labels:
  11. app: aind
  12. name: aind
  13. spec:
  14. replicas: 1
  15. selector:
  16. matchLabels:
  17. app: aind
  18. template:
  19. metadata:
  20. labels:
  21. app: aind
  22. spec:
  23. initContainers:
  24. - name: install-kmod
  25. image: ghcr.io/aind-containers/aind:latest
  26. command: ["/bin/bash"]
  27. args: ["-exc", "cp -f /install-kmod.sh /host/tmp/aind-install-kmod.sh && cd /host && chroot . bash /tmp/aind-install-kmod.sh"]
  28. securityContext:
  29. privileged: true
  30. volumeMounts:
  31. - name: host-root
  32. mountPath: /host
  33. # Remounting /sys as read-write in initContainers propagates to the Pod sandbox and the containers.
  34. # Required by anbox session-manager.
  35. # https://github.com/aind-containers/aind/issues/21 https://github.com/containerd/containerd/issues/3221 https://github.com/moby/moby/issues/24000#issuecomment-613194003
  36. - name: fix-sandbox-sysfs
  37. image: ghcr.io/aind-containers/aind:latest
  38. command: ["/bin/bash"]
  39. args: ["-exc", "mount -o remount,rw /sys"]
  40. securityContext:
  41. privileged: true
  42. containers:
  43. - name: aind
  44. image: ghcr.io/aind-containers/aind:latest
  45. tty: true
  46. securityContext:
  47. privileged: true
  48. ports:
  49. - containerPort: 5900
  50. volumeMounts:
  51. - name: host-lib-modules
  52. readOnly: true
  53. mountPath: /lib/modules
  54. resources:
  55. requests:
  56. memory: 2048m
  57. cpu: 500m
  58. livenessProbe:
  59. exec:
  60. command: ["pgrep", "-f", "org.anbox.appmgr"]
  61. initialDelaySeconds: 20
  62. periodSeconds: 15
  63. volumes:
  64. - name: host-root
  65. hostPath:
  66. path: /
  67. - name: host-lib-modules
  68. hostPath:
  69. path: /lib/modules
  70. # NOTE: Set the following nodeSelector if you have non-Ubuntu (i.e. cos) node pools on GKE
  71. # nodeSelector:
  72. # cloud.google.com/gke-os-distribution: ubuntu
  73. ---
  74. apiVersion: v1
  75. kind: Service
  76. metadata:
  77. labels:
  78. app: aind
  79. name: aind
  80. spec:
  81. ports:
  82. - port: 5900
  83. protocol: TCP
  84. selector:
  85. app: aind