feat: Botón Guardar Todo en conceptos y mejoras Docker

Cambios realizados:
- concept_view.php: Agregado botón 'Guardar Todo' arriba y abajo de la tabla, eliminado botón individual por fila
- dashboard.php: Agregado endpoint save_all_concept_payments para guardar múltiples pagos
- docker-entrypoint.sh: Corregidos permisos de volúmenes para ZimaOS/CasaOS (cambia dueño a www-data)
- docker/Dockerfile: Corregida ruta del entrypoint
- build-and-push.sh: Script interactivo para crear imagen Docker con opción de caché/sin caché

Los cambios permiten guardar todos los pagos de conceptos de una sola vez y mejoran la compatibilidad con despliegues en ZimaOS.
This commit is contained in:
2026-02-13 23:09:45 -06:00
parent 8f2f04951f
commit 23b527d3f5
27 changed files with 1517 additions and 19 deletions

View File

@@ -0,0 +1,112 @@
COMO SUBIR IMÁGENES A DOCKER REGISTRY
=====================================
1. ETIQUETAR LA IMAGEN
---------------------
Para subir una imagen al registry local, primero debes etiquetarla:
docker tag <nombre-imagen>:<tag> localhost:5000/<nombre-imagen>:<tag>
Ejemplo:
docker tag mi-app:latest localhost:5000/mi-app:latest
2. SUBIR LA IMAGEN AL REGISTRY
------------------------------
Una vez etiquetada, sube la imagen:
docker push localhost:5000/<nombre-imagen>:<tag>
Ejemplo:
docker push localhost:5000/mi-app:latest
3. VERIFICAR QUE LA IMAGEN ESTÁ EN EL REGISTRY
----------------------------------------------
Puedes verificar las imágenes en el registry usando:
curl -X GET http://localhost:5000/v2/_catalog
O accediendo a la UI web en: http://localhost:8081
4. DESCARGAR LA IMAGEN DESDE EL REGISTRY
----------------------------------------
Para descargar la imagen desde el registry:
docker pull localhost:5000/<nombre-imagen>:<tag>
Ejemplo:
docker pull localhost:5000/mi-app:latest
COMO SUBIR ACTUALIZACIONES DE LA IMAGEN
======================================
1. HACER CAMBIOS A TU IMAGEN
----------------------------
Realiza los cambios necesarios en tu Dockerfile o código fuente.
2. CONSTRUIR LA NUEVA VERSIÓN
------------------------------
Construye la nueva versión de la imagen:
docker build -t <nombre-imagen>:<nuevo-tag> .
Ejemplo con versión:
docker build -t mi-app:v2.0 .
O si quieres mantener el mismo tag:
docker build -t mi-app:latest .
3. ETIQUETAR PARA EL REGISTRY
------------------------------
Etiqueta la nueva versión para el registry:
docker tag <nombre-imagen>:<tag> localhost:5000/<nombre-imagen>:<tag>
Ejemplo:
docker tag mi-app:v2.0 localhost:5000/mi-app:v2.0
4. SUBIR LA ACTUALIZACIÓN
-------------------------
Sube la nueva versión al registry:
docker push localhost:5000/<nombre-imagen>:<tag>
Ejemplo:
docker push localhost:5000/mi-app:v2.0
5. VERIFICAR LA ACTUALIZACIÓN
-----------------------------
Verifica que la nueva versión esté disponible:
curl -X GET http://localhost:5000/v2/<nombre-imagen>/tags/list
Ejemplo:
curl -X GET http://localhost:5000/v2/mi-app/tags/list
NOTAS IMPORTANTES
================
- Siempre verifica que la imagen se construyó correctamente antes de subirla
- Puedes mantener múltiples versiones usando diferentes tags (v1.0, v1.1, v2.0, etc.)
- El tag 'latest' siempre apuntará a la última versión que subas con ese tag
- Para eliminar imágenes antiguas del registry, necesitarás usar la API de eliminación
- La UI web en http://localhost:8081 te permite ver todas las imágenes y sus tags
EJEMPLO COMPLETO DE WORKFLOW
============================
# 1. Construir imagen
docker build -t mi-app:1.0 .
# 2. Etiquetar para registry
docker tag mi-app:1.0 localhost:5000/mi-app:1.0
# 3. Subir a registry
docker push localhost:5000/mi-app:1.0
# 4. Para actualizar
docker build -t mi-app:1.1 .
docker tag mi-app:1.1 localhost:5000/mi-app:1.1
docker push localhost:5000/mi-app:1.1
# 5. Verificar
curl http://localhost:5000/v2/mi-app/tags/list