Saltar a contenido

Actualizar PHP / FrankenPHP

Los servicios Laravel de la plataforma usan la imagen dunglas/frankenphp:1-php8.4-alpine.

Proyectos afectados:

  • platform-api
  • platform-backoffice
  • integrations/blueocean
  • integrations/aggreg88
  • integrations/lucky-spins
  • slots-api

slots-admin usa RoadRunner y no depende de esta imagen.

1. Verificar la versión disponible

curl -fsS -o /dev/null \
  https://hub.docker.com/v2/repositories/dunglas/frankenphp/tags/1-php8.4.27-alpine \
  && echo "Disponible" || echo "Todavía no"

Comprobar la versión real:

docker pull dunglas/frankenphp:1-php8.4-alpine
docker run --rm --entrypoint php dunglas/frankenphp:1-php8.4-alpine -v

2. Actualizar los Dockerfiles

Si se decide fijar la versión:

FROM dunglas/frankenphp:1-php8.4.27-alpine

Si se mantiene el tag flotante, no hay cambio de Dockerfile, pero el build debe descargar la base nueva.

3. Forzar la descarga en el build

En CodeBuild, agregar --pull al docker build o ejecutar antes:

docker pull dunglas/frankenphp:1-php8.4-alpine

4. Reconstruir y desplegar

Reconstruir los 5 servicios afectados y desplegar en el orden habitual.

5. Verificar

docker run --rm --entrypoint php <imagen-ecr> -v

Debe mostrar la versión esperada. Después ejecutar smoke tests de login, lobby, juego y wallet.

Notas

  • FrankenPHP reconstruye imágenes a diario a las 04:00 UTC.
  • Un tag flotante puede cambiar sin que cambie el Dockerfile; por eso conviene fijar la versión para releases reproducibles.
  • Revisar el changelog de FrankenPHP y de PHP antes de actualizar en producción.