57 lines
2.1 KiB
Markdown
57 lines
2.1 KiB
Markdown
# Deploy Web
|
|
|
|
## Versión actual
|
|
|
|
- Base actual: `1.2.22`
|
|
- Fuente de verdad: [VERSION](/home/mgonzalez/desarrollo/react/linkedsign/VERSION)
|
|
- Historial de cambios: [CHANGELOG.md](/home/mgonzalez/desarrollo/react/linkedsign/CHANGELOG.md)
|
|
|
|
## Pasos
|
|
|
|
1. Haz los cambios en `dev`.
|
|
2. Si corresponde, sube versión:
|
|
- `./scripts/set-version.sh X.Y.Z`
|
|
- actualiza `CHANGELOG.md`
|
|
3. Prueba local:
|
|
- `cd frontend && npm run build`
|
|
- `cd ../backend && node -e "require('./src/app')"`
|
|
4. Guarda cambios en git:
|
|
- `git add .`
|
|
- `git commit -m "mensaje"`
|
|
5. Sube a Gitea:
|
|
- `git push origin main`
|
|
6. En el servidor app entra por SSH:
|
|
- `ssh deploy@192.168.222.3 -p 2203`
|
|
7. Actualiza código:
|
|
- `cd /opt/apps/linkedsign/source`
|
|
- `git fetch origin main`
|
|
- `git reset --hard origin/main`
|
|
- `rm -rf /opt/apps/linkedsign/source/android /opt/apps/linkedsign/source/android_react /opt/apps/linkedsign/source/android_firma_electronica.html`
|
|
8. En producción usa el script seguro:
|
|
- `cd /opt/apps/linkedsign/source`
|
|
- `bash scripts/deploy_prod_web.sh`
|
|
9. Reinicia servicios:
|
|
- `sudo systemctl restart linkedsign-frontend`
|
|
- `sudo systemctl restart linkedsign-backend`
|
|
10. Limpia archivos `.md` en producción:
|
|
- `find /opt/apps/linkedsign -type f -iname '*.md' -delete`
|
|
11. Verifica:
|
|
- `curl -I http://127.0.0.1:3000`
|
|
- `curl http://127.0.0.1:4000/health`
|
|
|
|
## Notas
|
|
|
|
- Nunca copies `.env` desde `dev` a `prod`.
|
|
- El archivo runtime de producción es:
|
|
- `/opt/apps/linkedsign/backend/.env`
|
|
- Si cambias variables de entorno, actualiza solo ese archivo runtime.
|
|
- Si cambias rutas del APK o storage, revisa también `PRODUCCION.md`.
|
|
- En producción no debe quedar código fuente Android; solo el APK release en `/opt/apps/linkedsign/android/apk/`.
|
|
- Si en el despliegue hay cambios Android, recuerda que a producción solo pasa el `APK release` versionado; no el proyecto Android completo.
|
|
- El deploy web no debe tocar ni reemplazar:
|
|
- `/opt/apps/linkedsign/backend/.env`
|
|
- `/opt/apps/linkedsign/storage/`
|
|
- `/opt/apps/linkedsign/logs/`
|
|
- `/opt/apps/linkedsign/android/apk/`
|
|
- permisos hardened de producción
|