¡Esta es una revisión vieja del documento!


Para información del entorno del Servidor de Producción de Helpcom ver Producción.

Producción (dev)

Definición práctica de los requisitos de Producción para un servidor Helpcom. Este documento está orientado más que nada a desarrollar en plataformas Linux y detalla aquellos aprovisionamientos de software soportados oficialmente por el Backend de Helpcom (lmachuca). Ver también Obtener Linux para ver las distribuciones de Linux soportadas.

Servidores BDD

Para plataformas de base de datos, las versiones de Producción (oficialmente soportadas) de motores de bases de datos en Debian son las siguientes:

Release MySQL MariaDB PostgreSQL SQLite MongoDB NoDB
Debian 7 (EOL 2016) 5.5 9.4 2.8
Debian 8 (EOL 2018) 5.5 9.6 3.14 2.4
Debian 9 (Stable 2018-2019) 10.1 9.6 3.16 3.4
Debian 10 (Stable 2020-2021) 10.2 10+/193 3.24 3.4
Debian Experimental 5.7 10.3 10+/193 3.24 3.4
Ubuntu 14 5.5 9.3 3.8 2.4
Ubuntu 16 5.7 10.1 9.5 3.11 2.6
Ubuntu 18 (LTS) 5.7 10.2 10+/190 3.22 3.6

(Es posible instalar otras versiones desde repositorios externos, siempre y cuando quedemos exento del mantenimiento al no ser oficiales. – lmachuca )

MySQL < 5.5 no está soportado en ninguna rama soportada y de momento sólo es posible su instalación por medio de un debootstrap.

Para productos que usan motor de Crux, entre otros, está en Helpcom solamente probado hasta MySQL Server 5.5.

Para Draco, las versiones de Debian y Ubuntu en Producción ya usan la API de SQLite más actualizada (>= 3.4).

Para servidores cliente de F.E., el requisito es más relajado ya que se han probado correctamente con MySQL 5.7.

Para el proyecto de Orión, el soporte de PostgreSQL soportado es 10.x, con planes de mover a 11.x.

Este requisito implica que los servidores Debian para Linux Crux deben ser los siguientes: Debian 7.x; Debian 8.x; Debian 9.x sin MariaDB y con repositorios de archivo instalados (MySQL-APT 5.5); Ubuntu 14; Ubuntu 16 con repositorios de archivo instalados (MySQL-APT 5.5).

Ver https://packages.debian.org/search?searchon=names&keywords=mysql-server para detalles del soporte. El motor de BDD por defecto para Debian 9 y superior es MariaDB >= 10.1.
Tarea para desarrollo: programación y QA para habilitar los siguientes productos para MySQL Server >= 5.7. Tomar en consideración que cambiar el motor de BDD a una versión más actualizada (o a un motor diferente) implica también cambiar el conector ODBC y/o integrar otro modelo de conexión al software (por ejemplo, puente SSH).
  • Crux
  • Serviteca
  • Alerce (Trébol)

Servidores Web

El servidor web por defecto para Debian es Apache. Alternativas son NGinx y Lighttpd. Los servidores centrales de Helpcom corren NGinx excepto donde se note lo contrario.

Programación

Esta sección describe la disponibilidad de los lenguajes y motores oficialmente soportados por el Backend de Helpcom.

PHP

PHP < 7.0 se considera EOL y no tiene soporte oficial; PHP 5.6 tiene soporte comunitario hasta Septiembre de 2019 pero se considera también descontinuado. Sólo se ofrece soporte en hosting que ya tiene PHP 5.6 operativo (por ejemplo DreamHost).

Para plataformas web basadas en PHP, las versiones de Producción de PHP en Debian son las siguientes:

  • Debian 8: PHP 5.6.36
  • Debian 9 (Stable): PHP 7.0.49
  • Debian 10: PHP 7.2.9
  • :!: Debian Unstable / Experimental: PHP 7.3.0
  • Ubuntu 14: PHP 5.5.9 (nota: desahuciado)
  • Ubuntu 16: PHP 7.0.30.
  • Ubuntu 18 (LTS): PHP 7.2.60.
Se espera que PHP 7.1 esté disponible para Debian 9 (Stable) a inicios de 2019.
Se espera que PHP 7.2 esté disponible para Debian 10 (Testing) a inicios de 2019.
Actualizado a 7.2.9 en Noviembre de 2018.
Ver https://packages.debian.org/search?suite=default&section=all&arch=any&searchon=names&keywords=php para detalles del soporte. El backend de PHP por defecto para Debian Stable es PHP 7.0.

El gestor de paquetes soportado por Debian es composer desde Debian 9 en adelante. Debian 9 (Stable) soporta Composer 1.2; Debian 10 soporta Composer 1.8. :!: Nota: por razones de seguridad, instalar Composer como global o con el usuario root por su página web oficial no será soportado por el Backend de Helpcom; sólo se soporta el instalador usado de manera local por el usuario del proyecto como se describe en https://getcomposer.org/doc/00-intro.md#locally .

Python

Python 2 se encuentra fuera de su periodo de soporte y se mantiene sólo por proyectos comunitarios. A menos que sea estrictamente necesario por toma de requerimientos, los desarrollos en Python debieran empezar en Python ≥ 3.4.

Para plataformas basadas en Python, las versiones de Producción de Python en Debian son 2.7 y 3.4 (Debian 7, Debian 8) a 3.6 (Debian 8, Debian 9).

Los nombres de paquete a instalar en Debian son python-2.7-dev y python-3.4-dev. Ver instalación y notas.

Los paquetes locales de Python se mantienen con el gestor de paquetes pip, y los paquetes se instalan como el usuario del proyecto vía el comando pip install --user (o pip3 install --user para Python 3). :!: Nota: Por razones de seguridad el Backend de Helpcom no dará soporte a paquetes instalados de manera global o con pip desde root. Ver notas.

El IDE recomendado en Debian para trabajar con Python es DrPython.

Java

El motor de Java por defecto para plataformas Linux es OpenJDK 9 / Icedtea 1.9, en general compatible con el spec de Java 9. Los motores OpenJDK 8 y OpenJDK 10 también están disponibles dependiendo de la versión de Linux.

:!: Debido a prohibiciones en la licencia, Oracle Java no está disponible dentro de la paquetería para Debian o Ubuntu excepto por un repositorio externo. Las versiones empaquetadas son usualmente oracle-jdk-9u20 en adelante.

Por requisitos externos, la plataforma de Servidores de Facturación Electrónica corre un entorno Oracle Java 7u21 (desahuciada). Es la única plataforma Helpcom a la que se debe permitir correr una versión de Java desahuciada hasta que se confirme la factibilidad de actualizar. Ver mrodriguez - ytorres.

Los siguientes son los JDK disponibles para Producción en las versiones de Debian / Ubuntu:

  • Debian 7: OpenJDK 7u171 (descontinuado).
  • Debian 8: OpenJDK 8u181.
  • Debian 9 (Stable): OpenJDK 8u181, 9u181.
  • Debian 10 / Experimental: OpenJDK 8u181, 10u12.
  • Ubuntu 16: OpenJDK 8u162, 9u114.
  • Ubuntu 18 (LTS): OpenJDK 8u181, OpenJDK11u8.

El nombre de paquete a instalar en Debian es openjdk-9-jdk en adelante. Ver notas de instalación.

El entorno de desarrollo recomendado para trabajar en Debian es Netbeans. Otros entornos soportados en Debian son Eclipse y Codelite.

Lua

Lua es un lenguaje de programación orientado a tablas. La versión soportada en Debian Stable es 5.1 y en Debian Testing de 5.2 en adelante.

El nombre de paquete a instalar en Debian es lua5.1 en adelante.

C/C++

Para desarrollar en C/C++ en Debian existen dos ramas de desarrollo de librerías principales: libstdc, que usa el toolkit de GCC, y libc++ que usa el toolkit de Clang. Cuál toolkit se va a usar depende del proyecto. El compilador por defecto en Debian Stable es GCC 6.x.

El nombre de paquete a instalar en Debian es gcc para GCC, y clang + libc++ para Clang.

produccion.1548815934.txt.gz · Última modificación: 2019/01/30 02:38 por lmachuca
CC Attribution-Noncommercial-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0