NG Sockets 2.0

Descripción

Este manual indica como hacer la instalación del backend de SGDEA OrfeoNG v2.0 partiendo de los fuentes en un Debian 12 o Ubuntu 24.04 o Windows XAMP.

Prerequistos

Arrancamos con un Linux preferible Kuine-LAMP v6 o Kuine-LAMaP v6 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 12 / 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 | 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
$> sudo ng version
     _                      _                 ____ _     ___
    / \   _ __   __ _ _   _| | __ _ _ __     / ___| |   |_ _|
   / △ \ | '_ \ / _` | | | | |/ _` | '__|   | |   | |    | |
  / ___ \| | | | (_| | |_| | | (_| | |      | |___| |___ | |
 /_/   \_\_| |_|\__, |\__,_|_|\__,_|_|       \____|_____|___|
                |___/

Angular CLI: 18.1.1
Node: 20.15.1
Package Manager: npm 10.7.0
OS: linux x64

Angular: 
...
Package                      Version
------------------------------------------------------
@angular-devkit/architect    0.1801.1 (cli-only)
@angular-devkit/core         18.1.1 (cli-only)
@angular-devkit/schematics   18.1.1 (cli-only)
@schematics/angular          18.1.1 (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/"
</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