docs(stradaautopartes): agrega VM 113 con app Laravel y documentacion
This commit is contained in:
240
proyectos/stradaautopartes/README.md
Normal file
240
proyectos/stradaautopartes/README.md
Normal file
@@ -0,0 +1,240 @@
|
||||
# StradaAutopartes
|
||||
|
||||
> Aplicación web para gestión de autopartes construida con **Laravel 10**, **Jetstream**, **Livewire**, **Tailwind CSS** y **MariaDB**.
|
||||
>
|
||||
> **IP**: `192.168.10.113`
|
||||
> **URL**: `http://192.168.10.113`
|
||||
> **VM**: Cisco1 VMID 113
|
||||
> **Estado**: ✅ Running
|
||||
|
||||
---
|
||||
|
||||
## 1. Resumen Ejecutivo
|
||||
|
||||
StradaAutopartes es una aplicación interna para la gestión de inventario, pedidos, caja y movimientos de un negocio de autopartes. Está alojada en una VM dedicada en el nodo Cisco1 de Proxmox.
|
||||
|
||||
| Aspecto | Detalle |
|
||||
|---|---|
|
||||
| **Framework** | Laravel 10 |
|
||||
| **Frontend** | Livewire + Alpine.js + Tailwind CSS |
|
||||
| **Auth/Teams** | Laravel Jetstream + Fortify |
|
||||
| **Roles/Permisos** | Spatie Laravel Permission |
|
||||
| **Base de datos** | MariaDB 10.11 |
|
||||
| **Web server** | nginx 1.24.0 |
|
||||
| **PHP** | 8.2 FPM |
|
||||
| **Node.js** | 20.x |
|
||||
| **Composer** | 2.10 |
|
||||
|
||||
---
|
||||
|
||||
## 2. Infraestructura
|
||||
|
||||
### 2.1 VM en Proxmox (Cisco1)
|
||||
|
||||
| Parámetro | Valor |
|
||||
|---|---|
|
||||
| **VMID** | 113 |
|
||||
| **Nombre** | StradaAutopartes |
|
||||
| **Nodo** | Cisco1 (192.168.10.185) |
|
||||
| **CPU** | 4 cores |
|
||||
| **RAM** | 8 GB |
|
||||
| **Disco** | 78.5 GB (`local-lvm`) |
|
||||
| **OS** | Ubuntu 24.04 LTS |
|
||||
| **IP estática** | 192.168.10.113/24 |
|
||||
| **Gateway** | 192.168.10.254 |
|
||||
| **DNS** | 8.8.8.8, 8.8.4.4 |
|
||||
|
||||
### 2.2 Acceso
|
||||
|
||||
| Método | Comando / URL |
|
||||
|---|---|
|
||||
| SSH root | `ssh root@192.168.10.113` |
|
||||
| Password root | `Aasi940812` |
|
||||
| Web | `http://192.168.10.113` |
|
||||
|
||||
> **Recomendación de seguridad**: cambiar el password de root en la primera oportunidad.
|
||||
|
||||
---
|
||||
|
||||
## 3. Software Instalado
|
||||
|
||||
```bash
|
||||
# Stack web
|
||||
nginx
|
||||
mariadb-server / mariadb-client
|
||||
|
||||
# PHP 8.2 + extensiones
|
||||
php8.2-fpm php8.2-cli php8.2-common php8.2-mysql php8.2-zip php8.2-gd
|
||||
php8.2-mbstring php8.2-curl php8.2-xml php8.2-bcmath php8.2-intl
|
||||
php8.2-opcache php8.2-readline php8.2-sqlite3 php8.2-redis
|
||||
|
||||
# Herramientas
|
||||
composer 2.10
|
||||
nodejs 20.x + npm
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 4. Estructura de Directorios
|
||||
|
||||
```
|
||||
/var/www/stradaautopartes/ # Código fuente de la aplicación
|
||||
├── app/
|
||||
├── bootstrap/
|
||||
├── config/
|
||||
├── database/
|
||||
├── public/ # Document root de nginx
|
||||
├── resources/
|
||||
├── routes/
|
||||
├── storage/
|
||||
└── .env # Variables de entorno
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 5. Base de Datos
|
||||
|
||||
| Parámetro | Valor |
|
||||
|---|---|
|
||||
| **Host** | 127.0.0.1 |
|
||||
| **Database** | `strada` |
|
||||
| **Usuario** | `strada` |
|
||||
| **Password** | `StradaAAS2024!` |
|
||||
| **Root password** | `StradaAAS2024!` |
|
||||
|
||||
### 5.1 Comandos útiles
|
||||
|
||||
```bash
|
||||
# Acceso a MariaDB
|
||||
mysql -u strada -p'StradaAAS2024!' strada
|
||||
|
||||
# Backup
|
||||
mysqldump -u strada -p'StradaAAS2024!' strada > /tmp/strada_backup.sql
|
||||
|
||||
# Restore
|
||||
mysql -u strada -p'StradaAAS2024!' strada < /tmp/strada_backup.sql
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 6. Configuración de nginx
|
||||
|
||||
`/etc/nginx/sites-available/stradaautopartes`:
|
||||
|
||||
```nginx
|
||||
server {
|
||||
listen 80;
|
||||
server_name _;
|
||||
root /var/www/stradaautopartes/public;
|
||||
index index.php index.html;
|
||||
|
||||
client_max_body_size 64M;
|
||||
|
||||
location / {
|
||||
try_files $uri $uri/ /index.php?$query_string;
|
||||
}
|
||||
|
||||
location ~ \.php$ {
|
||||
include snippets/fastcgi-php.conf;
|
||||
fastcgi_pass unix:/var/run/php/php8.2-fpm.sock;
|
||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||
include fastcgi_params;
|
||||
}
|
||||
|
||||
location ~ /\.(?!well-known).* {
|
||||
deny all;
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 7. Variables de Entorno (.env)
|
||||
|
||||
Resumen de valores clave:
|
||||
|
||||
```ini
|
||||
APP_NAME=StradaAutopartes
|
||||
APP_ENV=local
|
||||
APP_DEBUG=true
|
||||
APP_URL=http://192.168.10.113
|
||||
|
||||
DB_CONNECTION=mysql
|
||||
DB_HOST=127.0.0.1
|
||||
DB_PORT=3306
|
||||
DB_DATABASE=strada
|
||||
DB_USERNAME=strada
|
||||
DB_PASSWORD=StradaAAS2024!
|
||||
```
|
||||
|
||||
> **Nota**: el archivo `.env` ya está creado en `/var/www/stradaautopartes/.env`.
|
||||
|
||||
---
|
||||
|
||||
## 8. Comandos de Mantenimiento
|
||||
|
||||
```bash
|
||||
# Acceder a la VM
|
||||
ssh root@192.168.10.113
|
||||
|
||||
cd /var/www/stradaautopartes
|
||||
|
||||
# Reiniciar servicios
|
||||
systemctl restart nginx
|
||||
systemctl restart php8.2-fpm
|
||||
systemctl restart mariadb
|
||||
|
||||
# Permisos
|
||||
chown -R www-data:www-data storage bootstrap/cache public
|
||||
chmod -R 775 storage bootstrap/cache
|
||||
|
||||
# Instalar dependencias PHP
|
||||
COMPOSER_ALLOW_SUPERUSER=1 composer install --no-interaction --optimize-autoloader
|
||||
|
||||
# Actualizar dependencias
|
||||
COMPOSER_ALLOW_SUPERUSER=1 composer update --no-interaction --optimize-autoloader
|
||||
|
||||
# Instalar/build frontend
|
||||
npm install
|
||||
npm run build
|
||||
|
||||
# Migraciones
|
||||
php artisan migrate --force
|
||||
|
||||
# Limpiar cache
|
||||
php artisan config:clear
|
||||
php artisan cache:clear
|
||||
php artisan route:clear
|
||||
php artisan view:clear
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 9. Actualización desde Git
|
||||
|
||||
```bash
|
||||
ssh root@192.168.10.113
|
||||
cd /var/www/stradaautopartes
|
||||
git pull origin main
|
||||
COMPOSER_ALLOW_SUPERUSER=1 composer install --no-interaction --optimize-autoloader
|
||||
npm install && npm run build
|
||||
php artisan migrate --force
|
||||
php artisan optimize
|
||||
chown -R www-data:www-data storage bootstrap/cache public
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 10. Seguridad y Pendientes
|
||||
|
||||
- [ ] Cambiar password de root.
|
||||
- [ ] Configurar HTTPS con certificado SSL.
|
||||
- [ ] Crear primer usuario administrador desde `/register`.
|
||||
- [ ] Configurar dominio propio si se requiere acceso público.
|
||||
- [ ] Revisar y aplicar `npm audit fix` para las vulnerabilidades reportadas.
|
||||
- [ ] Evaluar unir la VM a Tailscale para acceso remoto seguro.
|
||||
|
||||
---
|
||||
|
||||
*Documentación StradaAutopartes - Consultoria Alcaraz Salazar*
|
||||
*Actualizado: 18 de Junio de 2026*
|
||||
Reference in New Issue
Block a user