All Projects β†’ fraunhoferfokus β†’ Deckschrubber

fraunhoferfokus / Deckschrubber

Licence: agpl-3.0
Deckschrubber inspects images of a Docker Registry and removes those older than a given age. πŸ”†πŸš’

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to Deckschrubber

Search Docker Registry V2 Script.1.0
view-private-registry is a simple bash script for listing images in a private registry v2, docker search registry-v2
Stars: ✭ 34 (-80.68%)
Mutual labels:  docker-registry
Sas Container Recipes
A collection of recipes and other resources for building containers that include SAS Viya software.
Stars: ✭ 71 (-59.66%)
Mutual labels:  docker-registry
Owasp Workshop
owasp-workshop: Orchetraing containers with Kubernetes
Stars: ✭ 116 (-34.09%)
Mutual labels:  docker-registry
Docker registry cli
Docker Registry CLI - Provides search functionality for Docker Registry (UI and CLI)
Stars: ✭ 48 (-72.73%)
Mutual labels:  docker-registry
Ansible Windows Docker Springboot
Example project showing how to provision, deploy, run & orchestrate Spring Boot apps with Docker Windows Containers on Docker Windows native using Packer, Powershell, Vagrant & Ansible
Stars: ✭ 58 (-67.05%)
Mutual labels:  docker-registry
Reg
Docker registry v2 command line client and repo listing generator with security checks.
Stars: ✭ 1,485 (+743.75%)
Mutual labels:  docker-registry
Docker Registry Ui
The simplest and most complete UI for your private registry
Stars: ✭ 756 (+329.55%)
Mutual labels:  docker-registry
Docker Reg Tool
Docker registry cli tool, primarily for deleting images.
Stars: ✭ 144 (-18.18%)
Mutual labels:  docker-registry
Vili
Stars: ✭ 62 (-64.77%)
Mutual labels:  docker-registry
Europa
Puppet Container Registry
Stars: ✭ 114 (-35.23%)
Mutual labels:  docker-registry
Dockerscan
Docker security analysis & hacking tools
Stars: ✭ 1,046 (+494.32%)
Mutual labels:  docker-registry
Pierone
STUPS' Docker registry with S3 backend, immutable tags and SCM source tracking
Stars: ✭ 57 (-67.61%)
Mutual labels:  docker-registry
Dockernotes
Dockerε…₯ι—¨η²ΎεŽη‰ˆ
Stars: ✭ 107 (-39.2%)
Mutual labels:  docker-registry
Dkregistry Rs
A pure-Rust asynchronous library for Docker Registry API v2
Stars: ✭ 35 (-80.11%)
Mutual labels:  docker-registry
Jib
πŸ— Build container images for your Java applications.
Stars: ✭ 11,370 (+6360.23%)
Mutual labels:  docker-registry
China Speed.github.io
δΈ­ε›½ι€ŸεΊ¦
Stars: ✭ 27 (-84.66%)
Mutual labels:  docker-registry
Imagewolf
Fast Distribution of Docker Images on Clusters
Stars: ✭ 94 (-46.59%)
Mutual labels:  docker-registry
Login Action
GitHub Action to login against a Docker registry
Stars: ✭ 149 (-15.34%)
Mutual labels:  docker-registry
Docker Registry Manifest Cleanup
Cleans up docker registry by removing untagged manifests from the registry
Stars: ✭ 127 (-27.84%)
Mutual labels:  docker-registry
Terraform Aws Ecr
Terraform Module to manage Docker Container Registries on AWS ECR
Stars: ✭ 110 (-37.5%)
Mutual labels:  docker-registry

Deckschrubber

n. person responsible for scrubbing a ship's deck.

Go Report Card License

Deckschrubber inspects images of a Docker Registry and removes those older than a given age.

Quick Start

go get github.com/fraunhoferfokus/deckschrubber
$GOPATH/bin/deckschrubber

Why this?

We run our own private registry on a server with limited storage and it was only a question of time, until it was full! Although there are similar approaches to do Docker registry house keeping (in Python, Ruby, etc), a native module (using Docker's own packages) was missing. This module has the following advantages:

  • Is binary!: No runtime, Python, Ruby, etc. is required
  • Uses Docker API: same packages and modules used to relaze Docker registry are used here

Arguments

-day int
      max age in days
-debug
      run in debug mode      
-dry
      does not actually deletes
-latest int
      number of the latest matching images of an repository that won't be deleted (default 1)      
-month int
      max age in months
-registry string
      URL of registry (default "http://localhost:5000")
-repo string
      matching repositories (allows regexp) (default ".*")      
-repos int
      number of repositories to garbage collect (default 5)
-tag string
      matching tags (allows regexp) (default ".*")      
-ntag string
      match everything but this tag (allows regexp) (default empty)
-v    shows version and quits
-year int
      max age in days
      
      

Registry preparation

Deckschrubber uses the Docker Registry API. Its delete endpoint is disabled by default, you have to enable it with the following entry in the registry configuration file:

delete:
  enabled: true

See the documentation for details.

Examples

  • Remove all images older than 2 months and 2 days
$GOPATH/bin/deckschrubber -month 2 -day 2
  • Remove all images older than 1 year from http://myrepo:5000
$GOPATH/bin/deckschrubber -year 1 -registry http://myrepo:5000
  • Analyize (but do not remove) images of 30 repositories
$GOPATH/bin/deckschrubber -repos 30 -dry
  • Remove all images of each repository except the 3 latest ones
$GOPATH/bin/deckschrubber -latest 3 
  • Remove all images with tags that ends with '-SNAPSHOT'
$GOPATH/bin/deckschrubber -tag ^.*-SNAPSHOT$ 
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].