dockergc-ds.yaml.j2 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. apiVersion: v1
  2. kind: List
  3. items:
  4. - apiVersion: v1
  5. kind: ServiceAccount
  6. metadata:
  7. name: dockergc
  8. # You must grant privileged via: oc adm policy add-scc-to-user -z dockergc privileged
  9. # in order for the dockergc to access the docker socket and root directory
  10. - apiVersion: extensions/v1beta1
  11. kind: DaemonSet
  12. metadata:
  13. name: dockergc
  14. labels:
  15. app: dockergc
  16. spec:
  17. updateStrategy:
  18. type: RollingUpdate
  19. template:
  20. metadata:
  21. labels:
  22. app: dockergc
  23. name: dockergc
  24. spec:
  25. {# Only set nodeSelector if the dict is not empty #}
  26. {% if openshift_crio_docker_gc_node_selector %}
  27. nodeSelector:
  28. {% for k,v in openshift_crio_docker_gc_node_selector.items() %}
  29. {{ k }}: "{{ v }}"{% endfor %}{% endif %}
  30. serviceAccountName: dockergc
  31. containers:
  32. - image: {{ openshift_docker_gc_image }}
  33. command:
  34. - "/usr/bin/oc"
  35. args:
  36. - "ex"
  37. - "dockergc"
  38. - "--image-gc-low-threshold=60"
  39. - "--image-gc-high-threshold=80"
  40. - "--minimum-ttl-duration=1h0m0s"
  41. securityContext:
  42. privileged: true
  43. name: dockergc
  44. resources:
  45. requests:
  46. memory: 30Mi
  47. cpu: 50m
  48. volumeMounts:
  49. - name: docker-root
  50. readOnly: true
  51. mountPath: /var/lib/containers/docker
  52. - name: docker-socket
  53. readOnly: false
  54. mountPath: /var/run/docker.sock
  55. volumes:
  56. - name: docker-root
  57. hostPath:
  58. path: /var/lib/containers/docker
  59. - name: docker-socket
  60. hostPath:
  61. path: /var/run/docker.sock