En esta página, se proporcionan instrucciones para crear y administrar reglas de retención de etiquetas para administradores o desarrolladores que administran y mantienen repositorios de Harbor. Las reglas de retención de etiquetas de Harbor son un conjunto de políticas que administran y optimizan automáticamente las etiquetas de imágenes dentro de los repositorios de Harbor.
Usa reglas de retención de etiquetas para realizar las siguientes acciones:
- Libera espacio de almacenamiento: Para evitar acumular datos innecesarios, define reglas para conservar artefactos durante un período específico o borra manualmente las etiquetas de imágenes que no se usen.
- Mantén un repositorio limpio: Conserva solo las etiquetas más recientes o relevantes para mejorar la organización y la visibilidad.
- Automatiza la administración de etiquetas: Evita la eliminación manual y optimiza el mantenimiento de tus repositorios de imágenes.
Las reglas de retención de etiquetas te permiten administrar imágenes en tu repositorio borrando automáticamente las etiquetas de imágenes que ya no necesitas. Las reglas de retención filtran tus etiquetas en tres pasos secuenciales para determinar qué imágenes quieres conservar y cuáles borrar:
- Repositorios: Ingresa el nombre del repositorio. Harbor primero aplica el filtro de repositorio y, luego, aplica la regla de retención a los repositorios que coinciden con el nombre del repositorio. Se permiten comodines como
*repo,repo*y**. Para obtener más información, consulta Cómo aplicar un filtro con patrones de comodín. Por ejemplo, puedes establecer el filtro de repositorio en**, lo que significa que se incluyen todos los repositorios del proyecto. - Cantidad a conservar: Ingresa la cantidad máxima de etiquetas o especifica un período máximo durante el cual se conservarán las etiquetas. Por ejemplo, puedes establecer la política de retención para conservar los 10 artefactos extraídos más recientemente en cada repositorio.
- Etiquetas que se conservarán: Ingresa el nombre de las etiquetas de imagen que deseas conservar. Harbor aplica la regla de retención a las etiquetas de imagen que coinciden con el texto de entrada. Usa la casilla de verificación para seleccionar si deseas capturar artefactos sin etiquetar como parte del conjunto de artefactos aptos para la retención de etiquetas o etiquetas que no tengan ese nombre. Se permiten comodines como
*tag,tag*y**. Para obtener más información, consulta Cómo aplicar filtros con patrones de comodín.
Antes de comenzar
Antes de crear reglas de retención de etiquetas, debes tener lo siguiente:
- Una cuenta con el rol
ProjectAdminde los controles de acceso basados en roles de Harbor Para obtener más información, consulta Cómo configurar el acceso para las APIs y dentro de una instancia de Harbor. - Un repositorio de Harbor existente.
Crea una regla de retención de etiquetas
Las reglas de etiquetas de retención de Harbor siguen un orden y una lógica específicos. Sigue estos principios cuando crees reglas de retención de etiquetas de Harbor:
- Define reglas de retención de etiquetas para repositorios, no para proyectos. Cuando defines una regla de retención para un repositorio, identificas las etiquetas que se deben conservar.
- No definas reglas para quitar etiquetas de forma explícita. Cuando configuras una regla, el sistema descarta las etiquetas de un repositorio que no identificas como aptas para la retención.
- El algoritmo
ORse usa entre las reglas.
Crea una regla de retención de etiquetas con la consola de Harbor:
- Accede a la consola de Harbor con una cuenta que tenga privilegios de administrador del proyecto.
- Ve a Proyectos y selecciona uno.
- En la ventana del proyecto, haz clic en la pestaña Policy y, luego, en Tag Retention.
- Haz clic en Agregar regla.
En el menú Repositorios, selecciona coincidentes o excluyentes.
Si seleccionas Coincidencia, Harbor aplica la regla a los repositorios que especificaste. Si seleccionas excluding, Harbor aplica la regla a todos los repositorios del proyecto, excepto a los que identificaste.
En el cuadro Repositorios, ingresa el nombre de los repositorios en los que se aplicará la regla. A continuación, se muestran ejemplos de entradas de texto:
- Un nombre de repositorio, como
example_repo_1 - Lista separada por comas de nombres de repositorios, como
example_repo_1,example_repo_2,example_repo_3. - Nombre parcial del repositorio con comodines, como
example_*,*_3o*_repo_*. - Para aplicar la regla a todos los repositorios del proyecto, usa el comodín
**. - Para obtener más información, consulta Cómo aplicar filtros con patrones de comodines.
- Un nombre de repositorio, como
En el menú Por cantidad de artefactos o cantidad de días, selecciona cuántas etiquetas deseas conservar o el período durante el que deseas conservarlas. Selecciona una de las siguientes opciones:
- Conserva los artefactos # enviados más recientemente: Conserva una cantidad específica de artefactos y prioriza los que se enviaron más recientemente. No se aplica ningún límite de edad para los artefactos.
- Conserva los artefactos # extraídos más recientemente: Conserva una cantidad específica de artefactos y prioriza los que se extrajeron más recientemente. No se aplica ningún límite de edad para los artefactos.
- Retain the artifacts pushed within the last # days: Conserva los artefactos enviados dentro de un período especificado. No hay límite en la cantidad de artefactos.
- Retain the artifacts pulled within the last # days: Conserva los artefactos extraídos dentro de un período especificado. No hay límite en la cantidad de artefactos.
- Conservar siempre: Siempre conserva los artefactos que coincidan con esta regla.
En el menú Etiquetas, selecciona coincidentes o excluyentes.
Si seleccionas coincidencia, Harbor aplica la regla a las etiquetas que identificaste. Si seleccionas excluding, Harbor aplica la regla a todas las etiquetas del repositorio, excepto a las que identificaste.
En el cuadro Etiquetas, ingresa los nombres de las etiquetas en las que se aplicará la regla.
A continuación, se muestran ejemplos de entradas de texto:
- Nombre de la etiqueta, como
example_tag_1. - Es una lista separada por comas de nombres de etiquetas, como
example_tag_1,example_tag_2,example_tag_3. - Es un nombre de etiqueta parcial con comodines, como
example_*,*_3o*_tag_*. - Para aplicar la regla a todas las etiquetas del proyecto, usa el comodín
**. - Para obtener más información, consulta Cómo aplicar filtros con patrones de comodines.
- Nombre de la etiqueta, como
Para guardar la regla, haz clic en Agregar.
Opcional: Para agregar más reglas, haz clic en Agregar regla. Puedes agregar un máximo de 15 reglas por proyecto.
Opcional: En el menú Programar, haz clic en Editar y selecciona la frecuencia con la que se ejecutará la regla. Si seleccionas Personalizado, ingresa un comando de trabajo cron para programar la regla. Si defines varias reglas, Harbor aplica la programación a todas ellas. No puedes programar diferentes reglas para que se ejecuten en diferentes momentos.
Para probar las reglas que definiste, haz clic en Ejecución de prueba.
Para ejecutar la regla de inmediato, haz clic en Ejecutar ahora.
Aplica filtros con patrones de comodín
Harbor usa la coincidencia de patrones de doble asterisco. Los patrones de comodín son caracteres o secuencias especiales que se usan para hacer coincidir o representar uno o más caracteres en una cadena. Usa patrones de comodín cuando apliques filtros a los nombres de tus repositorios o etiquetas en la creación de reglas de retención de etiquetas. Los comodines ofrecen las siguientes funciones:
- Representan uno o más caracteres sin especificarlos de forma explícita.
Usa comodines comunes de la siguiente manera:
*: Coincide con cero o más caracteres.?: Coincide con cualquier carácter único.
Por ejemplo,
file*coincide con cualquier nombre de archivo que comience confile.Permite la coincidencia flexible, lo que resulta útil cuando no conoces los caracteres exactos.
Usa los siguientes patrones de comodín admitidos cuando especifiques reglas de retención de etiquetas:
| Patrón | Descripción |
|---|---|
* |
Coincide con cualquier secuencia de separadores que no sean de ruta. |
** |
Coincide con cero o más directorios. |
? |
Coincide con cualquier carácter único que no sea un separador de ruta. |
[class] |
Coincide con cualquier carácter único que no sea un separador de ruta en relación con una clase de caracteres. Para obtener más información, consulta Cómo aplicar filtros con clases de caracteres. |
{alt1,...} |
Coincide con una secuencia de caracteres si coincide una de las alternativas separadas por comas. |
Para obtener más información sobre la coincidencia de patrones con doble asterisco, consulta https://github.com/bmatcuk/doublestar.
Aplica filtros con clases de caracteres
Las clases de caracteres y los comodines se usan para la coincidencia de patrones. Usa clases de caracteres cuando apliques filtros a los nombres de tus repositorios o etiquetas en la creación de reglas de retención de etiquetas. En comparación con los patrones de comodín, las clases de caracteres ofrecen las siguientes capacidades:
- Define un conjunto de caracteres específicos que pueden coincidir en una posición determinada.
- Usa corchetes (
[]) para encerrar el conjunto. Por ejemplo,[aeiou]coincide con cualquier vocal única. - Permite una concordancia más precisa, ya que enumeras de forma explícita los caracteres permitidos.
Usa las siguientes clases de caracteres para filtrar los repositorios y configurar tus reglas de retención:
| Clase | Descripción |
|---|---|
[abc] |
Coincide con cualquier carácter único dentro del conjunto. |
[a-z] |
Coincide con cualquier carácter único del rango. |
[^class] |
Coincide con cualquier carácter que no coincida con la clase. |
[!class] |
Niega la clase. |
Actualiza una regla de retención de etiquetas existente
Para modificar una regla existente, usa el menú Acción junto a una regla para desactivarla, editarla o borrarla.
Usa la consola de Harbor para modificar las reglas de retención de etiquetas existentes:
- Accede a la interfaz de Harbor con una cuenta que tenga privilegios de administrador del proyecto.
- Ve a Proyectos y selecciona uno.
- En la ventana del proyecto, haz clic en la pestaña Policy y, luego, en Tag Retention.
Para modificar una regla existente, usa el menú Acción para seleccionar una de las siguientes opciones:
- Inhabilitar: Inhabilita la regla. Puedes reactivar esta regla más adelante.
- Editar: Actualiza la configuración de una regla existente.
- Borrar: Quita la regla por completo.