Descripción
Este manual indica como hacer la instalación del backend de SGDEA OrfeoNG v2.0 partiendo de los fuentes en un Debian 13 o Ubuntu 24.04 o Windows XAMP.
Prerequistos
Arrancamos con un Linux preferible Kuine-LAMP v7 o Kuine-LAMaP v7 actualizado o con un Windows usando XAMP configurado según esta guia.
Configuración
0. Instale NODE Linux / Kuine
La documentación para instalar nodejs en GNU / Linux
https://github.com/nodesource/distributions/blob/master/README.md
Por ejemplo para instalar la version 20 en Debian 13 / Ubuntu 24
$> sudo su - $> apt-get install nodejs npm Si la version no es la 20+ (ejm Ubuntu 24.04) y toca a mano .. pues viene asi $> sudo su - $> curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash - $> sudo apt-get install -y nodejs
https://github.com/nodesource/distributions/blob/master/README.md
** Si tiene un conflicto entre nodejs y npm y no encuentra dependencias .. el truco esta en instalar aptitude en Debian / Ubuntu
0. Instale NODE Windows
Descargue e instale Node de https://nodejs.org/en/download (le dije que si que instalara todos los addons)
0.1 Instale Angular
Y ahora si … monte el angular cli
$> sudo su - (Linux) $> sudo npm install -g @angular/cli ** Ignore las alertas por versiones $> sudo ng version
_ _ ____ _ ___ / \ _ __ __ _ _ _| | __ _ _ __ / ___| | |_ _| / △ \ | '_ \ / _` | | | | |/ _` | '__| | | | | | | / ___ \| | | | (_| | |_| | | (_| | | | |___| |___ | | /_/ \_\_| |_|\__, |\__,_|_|\__,_|_| \____|_____|___| |___/
Angular CLI: 16.1.2
Node: 19.9.0 (Unsupported)
Package Manager: npm 9.6.3
OS: linux x64
Angular: undefined
…
Package Version
——————————————————
@angular-devkit/architect 0.1601.2 (cli-only)
@angular-devkit/core 16.1.2 (cli-only)
@angular-devkit/schematics 16.1.2 (cli-only)
@schematics/angular 16.1.2 (cli-only)
1. Descargue el sockets del repositorio
$> git config --global http.sslVerify false $> git clone https://aruba.skinatech.com/Orfeo-NG/ng_sockets.git
y en el directorio creado corra
$> npm install
para instalar todas las dependencias y tengo 0 obsoletos
2. Active el Servicio – probando
2.1 Instalación
Pruebe el servicio de angular para que todo este bien
$> npm run dev
En windows XAMP el firewall va a preguntar si se permite el acceso al puerto 3005 que abren los sockets
En Linux puede mandarlo a background para liberar la consola
$> npm start &> /dev/null &
Pruebe que el puerto esta abierto
$> telnet localhost 3005
2.2 Agregue un servicio al arranque en Linux / Kuine
Los pasos a seguir del proceso anterior:
$> sudo su $> vim /etc/systemd/system/ng_sockets.service
Agrege el siguiente texto
[Unit] Description=OrfeoNG Sockets Documentation=http://www.orfeolibre.org After=network.target remote-fs.target nss-lookup.target [Service] Type=simple User=admin Group=nogroup WorkingDirectory=/var/www/html/ng_sockets ExecStart=/usr/bin/npm start Restart=on-abort StartLimitInterval=60 StartLimitBurst=10 [Install] WantedBy=multi-user.target
Incluirlo en la secuencia de arranque
$> sudo systemctl daemon-reload $> sudo systemctl enable ng_sockets.service $> sudo systemctl start ng_sockets.service
Verifique que esta corriendo con
$> sudo systemctl status ng_sockets.service
2.2 Agregue un servicio al arranque en Windows
2.1. Ahora exponga el servicio con apache
Habilite los modulos de proxy
$> a2enmod proxy proxy_http
Agregue a apache la redireccion / proxy inverso (conf-enable/orfeong.conf)
<IfModule mod_proxy.c> ProxyPreserveHost On ProxyPass "/socket" "http://localhost:3005/" ProxyPassReverse "/socket" "http://localhost:3005/" # Esto ayuda con algunas consultas perdidas ProxyPass "/socket.io" "http://localhost:3005/socket.io" ProxyPassReverse "/socket.io" "http://localhost:3005/socket.io" </IfModule>
Trucos
1. Evite que se caiga con Monit en Linux /Kuine
Para evitar que el servico muera y se quede asi usamos monit
En /etc/monit/conf-available/ng_sockets
set daemon 60 check host ng_sockets with address 127.0.0.1 start program = "/usr/bin/systemctl start ng_sockets.service" stop program = "/usr/bin/systemctl stop ng_sockets.service" if failed port 3005 then restart if 5 restarts within 5 cycles then timeout
Problemas
Referencias
–
FIN