Docker
Stack en contenedores
SO anfitrión
Docker
Imágenes, contenedores, redes y volúmenes definidos como código.
Comparación
FlyEnv ejecuta runtimes y servicios de desarrollo de forma nativa en tu máquina. Docker empaqueta las aplicaciones y sus dependencias en contenedores. Ambos pueden crear entornos locales completos, pero optimizan para objetivos distintos.
Stack en contenedores
SO anfitrión
Docker
Imágenes, contenedores, redes y volúmenes definidos como código.
Servicios nativos en el SO anfitrión
SO anfitrión
Los runtimes y servicios se ejecutan directamente como procesos nativos.
La misma aplicación, distinto modelo de ejecución.
Stack en contenedores definido en compose.yaml
SO anfitrión
Docker
red: app-net
volúmenes: db-data, redis-data
▤compose.yaml
Stack en contenedores definido en compose.yaml.
Servicios nativos en el SO anfitrión
SO anfitrión
Servicios nativos en el SO anfitrión.
Ambas herramientas comparten un objetivo —un entorno funcional— pero toman caminos distintos para lograrlo.
FlyEnv ejecuta PHP, MySQL, Redis y Nginx directamente como servicios nativos del anfitrión. Docker organiza las mismas piezas como imágenes, contenedores, redes y volúmenes, con un aislamiento fuerte entre ellos y el anfitrión.
FlyEnv ofrece un modelo mental más rápido para el desarrollo local: los servicios locales habituales no requieren Dockerfile ni archivo Compose. La definición del entorno de Docker viaja con el proyecto y puede alinear el desarrollo con CI, staging y producción.
FlyEnv: elige una versión en la GUI, inicia el servicio y crea un sitio. Docker: define los servicios en compose.yaml e inicia todo el stack con un solo comando.
El mismo stack, vivido a través de dos flujos de trabajo distintos.

Los servicios de FlyEnv se instalan, inician y detienen desde la aplicación de escritorio, incluidas las versiones, los puertos y la configuración.
services:
app: # image, ports, volumes
db: # image, environment
redis: # image, networks
Los servicios de Docker se declaran como imágenes, puertos, volúmenes y redes en YAML: una definición precisa del entorno y bajo control de versiones.
La fortaleza de Docker: las mismas definiciones pueden ejecutarse en CI, staging y producción. FlyEnv, en cambio, optimiza para la máquina local.
Una comparación de modelos, no de cantidad de funciones: ambos pueden crear un entorno local completo.
| Capacidad | Docker / Docker Compose | FlyEnv |
|---|---|---|
| Modelo de ejecución | Contenedores | Procesos nativos del anfitrión |
| Definición del entorno | Dockerfile / Compose YAML | GUI y configuración del proyecto |
| Aislamiento | Aislamiento fuerte de contenedores | Servicios a nivel de anfitrión |
| Portabilidad a producción | Fuerte | No es el objetivo principal |
| Portabilidad CI/CD | Fuerte | Limitada / no principal |
| Dominios locales / HTTPS | Configurar mediante el stack o un proxy | Flujo de sitios locales integrado |
| Versiones de runtime | Etiquetas de imágenes de contenedor | Versiones locales gestionadas |
| Servicios de base de datos | Imágenes de contenedor | Módulos nativos gestionados |
| Redes | Redes de Docker | Red del anfitrión |
| Volúmenes | Volúmenes de Docker / bind mounts | Sistema de archivos nativo |
| Inicio del proyecto | docker compose up | UI y Startup Groups |
| Sobrecarga de recursos | Runtime de Docker o VM según el SO | Procesos nativos |
| Gestión por GUI | Docker Desktop y herramientas | FlyEnv |
| Más adecuado para | Entornos de contenedores portátiles y reproducibles | Desarrollo local nativo |
Una mirada lado a lado al mismo tipo de trabajo.
Con Docker
Escribir o seleccionar Dockerfiles e imágenes
Con FlyEnv
Seleccionar la versión de PHP
Con Docker
Crear compose.yaml
Con FlyEnv
Crear un sitio local
Con Docker
Configurar puertos
Con FlyEnv
Iniciar la base de datos y la caché
Con Docker
Configurar volúmenes
Con FlyEnv
Activar HTTPS
Con Docker
Configurar redes
Con FlyEnv
Iniciar los servicios del proyecto
Con Docker
Iniciar con docker compose up
Con FlyEnv
Abrir el sitio y empezar a desarrollar
La configuración adicional de Docker es también lo que hace que el entorno sea portátil y reproducible entre máquinas y etapas de despliegue.
Ambas herramientas pueden ser útiles; la elección correcta depende de tu flujo de trabajo.
FlyEnv y Docker no son mutuamente excluyentes: muchos equipos usan servicios nativos en local y contenedores en todos los demás entornos.
No. FlyEnv gestiona servicios locales nativos; Docker empaqueta aplicaciones en contenedores. Resuelven problemas distintos y pueden usarse juntos.
Cuando importan la paridad con producción, el aislamiento o los entornos de CI/staging reproducibles, o cuando el proyecto ya incluye un compose.yaml.
Cuando quieres un entorno local nativo rápido con runtimes gestionados, dominios locales y HTTPS, sin escribir Dockerfiles ni archivos Compose.
Sí: una configuración habitual es FlyEnv para el desarrollo nativo diario y Docker para CI, pruebas de integración o proyectos que requieran paridad de contenedores. Evita conflictos de puertos entre ambos.
No. FlyEnv ejecuta runtimes y servicios como procesos nativos del anfitrión en macOS, Windows y Linux.
No de forma predeterminada. Normalmente debes añadir un proxy inverso (Traefik, nginx-proxy) y certificados (mkcert o una CA) por tu cuenta; FlyEnv incluye un flujo de sitios locales integrado para dominios y HTTPS.
Si el equipo despliega contenedores, el compose.yaml de Docker es el contrato compartido más sólido. Para equipos que desarrollan de forma nativa en macOS, Windows y Linux, FlyEnv ofrece a todos el mismo flujo de trabajo de escritorio.
Sí: el archivo compose permanece intacto; puedes seguir ejecutando el runtime y los servicios de la aplicación de forma nativa en FlyEnv, o simplemente seguir usando Docker para ese proyecto.
Crea un sitio local, selecciona los runtimes y servicios que necesita y empieza a trabajar, sin contenedores.