feat: Add initial setup page and functionality for admin account creation

- Created setup.html for the initial configuration of the admin account.
- Implemented setup.js to handle form submission and validation.
- Added logo images for branding.
- Introduced storage.js for API data handling (load, save, remove).
- Added styles.css for consistent styling across the application.
This commit is contained in:
Marco Gallegos
2025-08-25 08:01:30 -06:00
parent 9c497bc414
commit 4a841917f8
29 changed files with 4163 additions and 3216 deletions

29
Dockerfile Normal file
View File

@@ -0,0 +1,29 @@
# 1. Imagen base: Node.js 18 en Alpine (ligera)
FROM node:18-alpine
# 2. Variable de entorno para producción
ENV NODE_ENV=production
# 3. Directorio de trabajo
WORKDIR /app
# 4. Copiar dependencias primero para aprovechar caché
COPY package*.json ./
# 5. Instalar dependencias de producción y limpiar caché
RUN npm ci --omit=dev && npm cache clean --force
# 6. Copiar el resto de la aplicación
COPY . .
# 7. Crear usuario no root y darle permisos
RUN addgroup -S app && adduser -S app -G app \
&& chown -R app:app /app
USER app
# 8. Exponer el puerto
EXPOSE 3111
# 9. Comando de inicio
CMD ["npm", "start"]