You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -275,6 +276,104 @@ Downside: More PVs to maintain and therefore higher costs.
275
276
276
277
- `reuseVolumeSelector: 'codefresh-app,io.codefresh.accountName,pipeline_id,trigger'` - PV can be used only by single pipeline AND single trigger.
277
278
279
+
### Volume cleaners
280
+
281
+
Codefresh pipelines require disk space for:
282
+
* [Pipeline Shared Volume](https://codefresh.io/docs/docs/pipelines/introduction-to-codefresh-pipelines/#sharing-the-workspace-between-build-steps) (`/codefresh/volume`, implemented as [docker volume](https://docs.docker.com/storage/volumes/))
283
+
* Docker containers, both running and stopped
284
+
* Docker images and cached layers
285
+
286
+
Codefresh offers two options to manage disk space and prevent out-of-space errors:
287
+
* Use runtime cleaners on Docker images and volumes
288
+
* [Set the minimum disk space per pipeline build volume](https://codefresh.io/docs/docs/pipelines/pipelines/#set-minimum-disk-space-for-a-pipeline-build)
289
+
290
+
To improve performance by using Docker cache, Codefresh `volume-provisioner` can provision previously used disks with Docker images and pipeline volumes from previously run builds.
291
+
292
+
### Types of runtime volume cleaners
293
+
294
+
Docker images and volumes must be cleaned on a regular basis.
295
+
296
+
* [IN-DIND cleaner](https://github.com/codefresh-io/dind/tree/master/cleaner): Deletes extra Docker containers, volumes, and images in **DIND pod**.
* [Local volume cleaner](https://github.com/codefresh-io/dind-volume-utils/blob/master/local-volumes/lv-cleaner.sh): Deletes **local** volumes if node disk space is close to the threshold.
299
+
300
+
### IN-DIND cleaner
301
+
302
+
**Purpose:** Removes unneeded *docker containers, images, volumes* inside Kubernetes volume mounted on the DIND pod
303
+
304
+
**How it runs:** Inside each DIND pod as script
305
+
306
+
**Triggered by:** SIGTERM and also during the run when disk usage > 90% (configurable)
307
+
308
+
**Configured by:** Environment Variables which can be set in Runtime Environment spec
| runtime.dind.pvcs[0].storageClassName | string | `"{{ include \"dind-volume-provisioner.storageClassName\" . }}"` | PVC storage class name. Change ONLY if you need to use storage class NOT from Codefresh volume-provisioner |
@@ -275,6 +276,103 @@ Downside: More PVs to maintain and therefore higher costs.
275
276
276
277
- `reuseVolumeSelector: 'codefresh-app,io.codefresh.accountName,pipeline_id,trigger'` - PV can be used only by single pipeline AND single trigger.
277
278
279
+
### Volume cleaners
280
+
281
+
Codefresh pipelines require disk space for:
282
+
* [Pipeline Shared Volume](https://codefresh.io/docs/docs/pipelines/introduction-to-codefresh-pipelines/#sharing-the-workspace-between-build-steps) (`/codefresh/volume`, implemented as [docker volume](https://docs.docker.com/storage/volumes/))
283
+
* Docker containers, both running and stopped
284
+
* Docker images and cached layers
285
+
286
+
Codefresh offers two options to manage disk space and prevent out-of-space errors:
287
+
* Use runtime cleaners on Docker images and volumes
288
+
* [Set the minimum disk space per pipeline build volume](https://codefresh.io/docs/docs/pipelines/pipelines/#set-minimum-disk-space-for-a-pipeline-build)
289
+
290
+
To improve performance by using Docker cache, Codefresh `volume-provisioner` can provision previously used disks with Docker images and pipeline volumes from previously run builds.
291
+
292
+
### Types of runtime volume cleaners
293
+
294
+
Docker images and volumes must be cleaned on a regular basis.
295
+
296
+
* [IN-DIND cleaner](https://github.com/codefresh-io/dind/tree/master/cleaner): Deletes extra Docker containers, volumes, and images in **DIND pod**.
* [Local volume cleaner](https://github.com/codefresh-io/dind-volume-utils/blob/master/local-volumes/lv-cleaner.sh): Deletes **local** volumes if node disk space is close to the threshold.
299
+
300
+
### IN-DIND cleaner
301
+
302
+
**Purpose:** Removes unneeded *docker containers, images, volumes* inside Kubernetes volume mounted on the DIND pod
303
+
304
+
**How it runs:** Inside each DIND pod as script
305
+
306
+
**Triggered by:** SIGTERM and also during the run when disk usage > 90% (configurable)
307
+
308
+
**Configured by:** Environment Variables which can be set in Runtime Environment spec
0 commit comments