From b1322e05c65e7aa9fb68705f33dc724ee753d9cd Mon Sep 17 00:00:00 2001 From: Resistencia Dev Date: Mon, 22 Dec 2025 17:20:41 +0100 Subject: [PATCH] feat: Configurar acceso desde red local MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Crear archivo .env.example con configuración de red local - Actualizar docker-compose.yml para usar variables de entorno - Soportar acceso desde IP 192.168.1.131 - Documentar configuración en NETWORK-ACCESS.md - Permitir acceso desde móviles y tablets en la misma red --- .env.example | 13 ++++++++++ NETWORK-ACCESS.md | 62 ++++++++++++++++++++++++++++++++++++++++++++++ docker-compose.yml | 6 ++--- 3 files changed, 78 insertions(+), 3 deletions(-) create mode 100644 .env.example create mode 100644 NETWORK-ACCESS.md diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..9f18078 --- /dev/null +++ b/.env.example @@ -0,0 +1,13 @@ +# Configuración de red local +# Cambia esta IP a la IP de tu PC en la red local +HOST_IP=192.168.1.131 + +# URLs para desarrollo local +NEXT_PUBLIC_API_URL=http://192.168.1.131:4000 +CORS_ORIGIN=http://192.168.1.131:3000 + +# Configuración de base de datos +DATABASE_URL=postgresql://postgres:password@db:5432/resistencia +POSTGRES_USER=postgres +POSTGRES_PASSWORD=password +POSTGRES_DB=resistencia diff --git a/NETWORK-ACCESS.md b/NETWORK-ACCESS.md new file mode 100644 index 0000000..07bce2d --- /dev/null +++ b/NETWORK-ACCESS.md @@ -0,0 +1,62 @@ +# Configuración de Acceso desde Red Local + +## Problema +Por defecto, la aplicación está configurada para usar `localhost`, lo que solo permite acceso desde el mismo PC. Para acceder desde otros dispositivos (móviles, tablets, etc.) en la misma red local, necesitas configurar la IP de tu PC. + +## Solución + +### 1. Obtener la IP de tu PC +```bash +ip -c a +``` +Busca la IP en la interfaz de red activa (ej: `enp3s0`). En este caso: `192.168.1.131` + +### 2. Configurar el archivo .env +Edita el archivo `.env` en la raíz del proyecto: + +```env +# Cambia esta IP a la IP de tu PC +HOST_IP=192.168.1.131 + +NEXT_PUBLIC_API_URL=http://192.168.1.131:4000 +CORS_ORIGIN=http://192.168.1.131:3000 +``` + +### 3. Reiniciar Docker +```bash +docker compose down +docker compose up -d --build +``` + +### 4. Acceder desde otros dispositivos +Desde tu móvil, tablet u otro dispositivo en la misma red WiFi, abre el navegador y ve a: +``` +http://192.168.1.131:3000 +``` + +## Notas Importantes + +- **Firewall**: Asegúrate de que tu firewall permita conexiones en los puertos 3000 y 4000 +- **Misma red**: Todos los dispositivos deben estar en la misma red WiFi/LAN +- **IP dinámica**: Si tu IP cambia (DHCP), tendrás que actualizar el archivo `.env` y reiniciar Docker + +## Verificar Firewall (Ubuntu/Linux) + +```bash +# Ver estado del firewall +sudo ufw status + +# Si está activo, permitir los puertos +sudo ufw allow 3000/tcp +sudo ufw allow 4000/tcp +``` + +## Para volver a localhost + +Simplemente edita `.env` y cambia las URLs a `localhost`: +```env +NEXT_PUBLIC_API_URL=http://localhost:4000 +CORS_ORIGIN=http://localhost:3000 +``` + +Y reinicia Docker. diff --git a/docker-compose.yml b/docker-compose.yml index be2e6fc..dc54a40 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -12,7 +12,7 @@ services: - ./shared:/app/shared - /app/client/node_modules environment: - - NEXT_PUBLIC_API_URL=http://localhost:4000 + - NEXT_PUBLIC_API_URL=${NEXT_PUBLIC_API_URL:-http://localhost:4000} depends_on: - server networks: @@ -32,8 +32,8 @@ services: - /app/server/node_modules environment: - PORT=4000 - - DATABASE_URL=postgresql://postgres:password@db:5432/resistencia - - CORS_ORIGIN=http://localhost:3000 + - DATABASE_URL=${DATABASE_URL:-postgresql://postgres:password@db:5432/resistencia} + - CORS_ORIGIN=${CORS_ORIGIN:-http://localhost:3000} depends_on: - db networks: