localhost:8080 - Guía del puerto de servidores web y aplicaciones
Actualizado el 1 ago 2026
localhost:8080
El puerto HTTP alternativo de los servidores web
🌐 Abrir localhost:8080Accede a tu servidor web o aplicación en el puerto 8080
El puerto 8080 es el puerto HTTP sin privilegios que eligen casi todos los proyectos cuando el 80 está ocupado. En Linux y macOS, escuchar en puertos por debajo del 1024 exige ser root (o tener la capacidad CAP_NET_BIND_SERVICE en Linux); el 8080 es uno de los números «HTTP alternativos» del registro de la IANA (registrado como http-alt) y no requiere privilegios. Esa es la razón principal de su éxito.
localhost resuelve a 127.0.0.1 en IPv4 o a ::1 en IPv6, y ambas apuntan a tu propia máquina. Así que localhost:8080 significa «el proceso que esté escuchando en el puerto TCP 8080 de este equipo». Apache Tomcat eligió el 8080 hace décadas, Jenkins lo heredó y el ecosistema Java lo consolidó. Hoy también lo usan por defecto muchas herramientas ajenas a Java: code-server, LocalAI y Open WebUI son ejemplos modernos habituales.
Acceder a localhost:8080 desde otros dispositivos
Si no consigues llegar a localhost:8080 desde otros dispositivos, seguramente sea porque estás en otra red. Usa un túnel de Pinggy para acceder desde cualquier sitio:
ssh -p 443 -R0:localhost:8080 free.pinggy.io
Este comando crea un túnel seguro que reenvía el tráfico de una URL pública a tu servidor web local en el puerto 8080, lo que te permite:
- Compartir tu servidor de Tomcat o Jenkins con compañeros o clientes
- Probarlo en el móvil sin estar en la misma red
- Enseñar tu aplicación desde cualquier parte del mundo
- Acceder a herramientas de CI/CD en remoto para desarrollo y pruebas
El túnel te da una URL pública que puedes compartir, de modo que tu servidor en localhost:8080 queda accesible desde cualquier dispositivo con conexión.
Servicios y programas que usan el puerto 8080
El puerto 8080 no está ligado a un único servicio, así que lo usan muchas aplicaciones distintas según su configuración. Estas son las categorías principales:
☕ Servidores de aplicaciones Java
- Apache Tomcat: contenedor de servlets y servidor web
- Spring Boot: framework de Java con Tomcat embebido
- JBoss/WildFly: servidor de aplicaciones Java empresarial
- Jetty: servidor web y motor de servlets ligero
- GlassFish: servidor de aplicaciones Java EE
🔧 Herramientas de CI/CD y DevOps
- Jenkins: servidor de automatización para integración continua
- GitLab Runner: interfaces web del runner de CI/CD
- Nexus Repository: gestor de repositorios de artefactos
- Artifactory: repositorio universal de artefactos
- TeamCity: servidor de CI/CD de JetBrains
🌐 Servidores web y proxies
- Nginx: proxy inverso y servidor web
- Apache HTTP Server: configuración con puerto HTTP alternativo
- HAProxy: balanceador de carga y proxy
- Squid: proxy con caché
- Caddy: servidor web moderno con HTTPS automático
🐳 Desarrollo y contenedores
- code-server: VS Code en el navegador; por defecto en
127.0.0.1:8080 - Adminer: gestor de bases de datos en un solo archivo, habitual en el 8080 con el servidor integrado de PHP
- Contenedores de
Docker: el 8080 es el puerto de host más usado en los ejemplos de
compose - Servicios de Kubernetes: convención para los puertos HTTP dentro del clúster
- webpack-dev-server: usa el puerto 8080 por defecto desde la v4
🤖 IA y aplicaciones locales
- LocalAI: API compatible con OpenAI para modelos locales, por defecto en el 8080
- Open WebUI: interfaz para Ollama y backends compatibles con OpenAI; el contenedor escucha internamente en el 8080 (la documentación mapea
3000:8080) - AnythingLLM y otras interfaces RAG: se exponen a menudo en el 8080 con Docker
Las herramientas de Java son las que hicieron famoso al 8080; las de IA y desarrollo son la razón de que te lo encuentres en una máquina recién estrenada en 2026. Si ejecutas varias a la vez, vas a tener conflictos. Salta a la sección de resolución de problemas para el baile de siempre.
Cómo resolver problemas con localhost:8080
Si no consigues acceder a localhost:8080, así puedes diagnosticar y solucionar los fallos más comunes:
🔍 Paso 1: comprueba que el servicio está en marcha
Acción: confirma que tu servidor o aplicación está activo en el puerto 8080.
Cómo comprobarlo:
- Tomcat: comprueba que el servicio está corriendo y responde
- Jenkins: revisa el estado del servicio y los logs de arranque
- Spring Boot:
mvn spring-boot:runojava -jar app.jar - Revisa los logs: busca «Listening on port 8080» o mensajes similares
🚫 Paso 2: resuelve los conflictos de puerto
Acción: averigua qué más está en el 8080 y, o lo paras, o mueves tu aplicación.
Cómo arreglarlo:
- Localiza el proceso:
lsof -iTCP:8080 -sTCP:LISTENen Linux/macOS, onetstat -ano | findstr :8080en Windows. En Linux moderno,ss -lptn 'sport = :8080'funciona sinlsof. - Párale con elegancia primero:
kill <PID>(envía SIGTERM). Recurre akill -9 <PID>solo si el proceso se niega a salir, porque SIGKILL se salta la limpieza. - O mueve tu aplicación: el 8081 es el siguiente paso habitual; del 8081 al 8089 es la escalera de escape típica cuando el 8080 está ocupado.
🔧 Paso 3: confirma el puerto configurado
Acción: comprueba que el servicio cree de verdad que está en el 8080. La mayoría de los «pero si debería estar corriendo» son una configuración desfasada en alguna parte.
Dónde mirar:
- Tomcat: el atributo
Connector port="8080"enconf/server.xml - Spring Boot:
server.portenapplication.properties/application.yml, o la variableSERVER_PORT(que tiene prioridad sobre el archivo) - Jenkins:
--httpPort=8080al lanzar el war, oJENKINS_PORTen/etc/default/jenkinso en la unidad de systemd - code-server: el flag
--bind-addro la líneabind-addren~/.config/code-server/config.yaml
🌐 Paso 4: prueba la conexión
Acción: verifica que el servidor web responde.
Cómo probarlo:
- Navegador: abre
http://localhost:8080 - Terminal:
curl http://localhost:8080 - Acceso en red: usa tu IP, por ejemplo
http://192.168.1.100:8080
Problemas habituales y sus soluciones
Estos son los fallos típicos con localhost:8080 y cómo resolverlos:
❌ Error «Port Already in Use»
Problema: otra aplicación está ocupando el puerto 8080.
Solución: localiza el proceso con sudo lsof -i :8080, párale con sudo kill -9 <PID> o configura tu aplicación en el 8081.
⚠️ El servicio no arranca
Problema: Tomcat, Jenkins u otro servicio no consigue arrancar en el 8080.
Solución: revisa los logs, comprueba los archivos de configuración, verifica los permisos y confirma que las dependencias están instaladas.
🔐 Problemas con la instalación inicial de Jenkins
Problema: no puedes abrir el asistente de Jenkins o no encuentras la contraseña inicial.
Solución: entra en localhost:8080 y busca la contraseña inicial en /var/lib/jenkins/secrets/initialAdminPassword; después sigue el asistente.
🌐 No se puede acceder desde otros dispositivos
Problema: localhost:8080 solo funciona en tu propia máquina.
Solución: configura la aplicación para escuchar en 0.0.0.0:8080, abre el puerto en el cortafuegos con sudo ufw allow 8080 y entra por la IP en lugar de por localhost.
🐳 Problemas con contenedores de Docker
Problema: no puedes acceder a la aplicación que corre en un contenedor en el 8080.
Solución: comprueba el mapeo de puertos con docker run -p 8080:8080 myapp y revisa los logs con docker logs container-name.
Resumen
- Qué es: el puerto TCP 8080 en la dirección de loopback (
127.0.0.1/::1). Registrado en la IANA comohttp-alt, la alternativa sin privilegios al puerto 80. - Quién lo usa por defecto: Tomcat, Spring Boot, Jenkins, code-server, LocalAI y el contenedor de Open WebUI, además de casi todos los ejemplos de «HTTP alternativo» de la documentación de Docker.
- Lo primero que probar cuando falla:
lsof -iTCP:8080 -sTCP:LISTEN(oss -lptn 'sport = :8080') para ver quién tiene realmente el puerto. - Lo primero que probar cuando lo tiene otro: mueve tu aplicación al 8081. Lo aceptan
server.portde Spring Boot,--httpPortde Jenkins,--bind-addrde code-server y--portde LocalAI.
🚀 Comandos rápidos
# Tomcat (systemd)
sudo systemctl start tomcat
# Spring Boot
mvn spring-boot:run
# code-server (VS Code en el navegador)
code-server --bind-addr 0.0.0.0:8080
# LocalAI (puerto por defecto)
docker run -p 8080:8080 localai/localai:latest
# Servidor de archivos estáticos rápido
python3 -m http.server 8080Usa estos comandos para arrancar rápido servicios en localhost:8080
Una nota práctica para terminar: si varios servicios de tu máquina quieren el 8080, la escalera de escape habitual es 8081 → 8082 → 8083 y así. Si ejecutas Tomcat y Jenkins a la vez, cuenta con mover al menos uno. La propiedad server.port de Spring Boot y el flag --httpPort de Jenkins (o la variable JENKINS_PORT con systemd) son los dos ajustes que más vas a tocar. LocalAI y Open WebUI aceptan un --port o una variable PORT explícita; poner uno de los dos en el 8081 te ahorra el problema entero.