Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
produccion [2018/11/28 19:11] lmachucaproduccion [2020/06/02 22:51] (actual) lmachuca
Línea 4: Línea 4:
 ======Producción (dev)====== ======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.+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 ([[user>lmachuca]]). Ver también [[Obtener Linux]] para ver las distribuciones de Linux soportadas.
  
 =====Servidores BDD===== =====Servidores BDD=====
  
-Para plataformas web basadas en PHP, las versiones de Producción (**oficialmente** soportadas) de motores de bases de datos en Debian son las siguientes:+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    |  ^ Release    ^ MySQL  ^ MariaDB  ^ PostgreSQL   ^ SQLite   ^ MongoDB  ^ NoDB    | 
 | Debian 7 (EOL 2016)  | 5.5    | -- | 9.4 | 2.8 | -- | | Debian 7 (EOL 2016)  | 5.5    | -- | 9.4 | 2.8 | -- |
 | Debian 8 (EOL 2018)  | 5.5    | -- | 9.6 | 3.14 | 2.4  | | 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 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 10 (Stable 2020-2021) | --     | 10.2  | 10+/193 | 3.24 | 3.4 |
 | Debian Experimental  |  5.7  | 10.3  | 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 14  | 5.5    | -- | 9.3 | 3.8 | 2.4 |
-| Ubuntu 16  | 5.7    | 10.1 | 9.5 | 3.11 | 2.6 |+| Ubuntu 16 (LTS)  | 5.7    | 10.1 | 9.5 | 3.11 | 2.6 |
 ^ Ubuntu 18 (LTS)  | 5.7  | 10.2  | 10+/190 | 3.22 | 3.6  | ^ Ubuntu 18 (LTS)  | 5.7  | 10.2  | 10+/190 | 3.22 | 3.6  |
 +| Ubuntu 20 (LTS) | ???    | ??? | ??? | ??? | ??? |
  
  
 (Es posible instalar otras versiones desde repositorios externos, siempre y cuando quedemos exento del mantenimiento al no ser oficiales. -- [[user>lmachuca]] ) (Es posible instalar otras versiones desde repositorios externos, siempre y cuando quedemos exento del mantenimiento al no ser oficiales. -- [[user>lmachuca]] )
  
-Para productos que usan motor de **Crux**, entre otros, está en Helpcom solamente probado **hasta MySQL Server 5.5**. +MySQL < 5.5 no está soportado en ninguna rama oficial y de momento sólo es posible su instalación por medio de un [[https://wiki.ubuntu.com/DebootstrapChroot|debootstrap]]. 
 + 
 +Para productos que usan motor de **Crux**, entre otros, está en Helpcom solamente probado
 + 
 +  * Crux < 4.0 **hasta MySQL Server 5.5**
 +  * Crux 4.0 hasta 4.0.6: MySQL Server 5.5 y/o MariaDB >= 10.2. 
 +  * Crux 4.0.7 en adelante: MariaDB >= 10.2 y //potencialmente// MySQL 5.7 a < 8.0.
  
 Para Draco, las versiones de Debian y Ubuntu en Producción ya usan la API de SQLite más actualizada (>= 3.4). 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 equipos cliente de F.E., el requisito es más relajado ya que se han probado correctamente con MySQL 5.7; el único detalle es que el proceso de instalación es más largo.
  
-Este requisito implica que los servidores **Debian** para Linux Crux deben ser los siguientes:+Para el proyecto de **Orión**, el soporte de PostgreSQL soportado es 10.x, con planes de mover a 11.x.
  
-  * Debian 7 (MySQL 5.5) +Este requisito implica que los servidores **Debian** para Linux Crux deben ser los siguientes: Debian 8.x (:!: evaluar)Debian 9.x quitando MariaDB e instalando MySQL 5.7; Ubuntu 14Ubuntu 16 fijando la versión de MySQL.
-  * Debian 8 (MySQL 5.5) +
-  * Debian 9 (Stable) **sin** MariaDB y **con** repositorios de archivo instalados (MySQL-APT 5.5). +
-  * Ubuntu 14 (MySQL 5.5) +
-  * Ubuntu 16 **con** repositorios de archivo instalados (MySQL-APT 5.5).+
  
 <note info>**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.</note> <note info>**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.</note>
  
-<note warning> **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).+<note warning> **Tarea**: programación (Desarrollo) y QA (Técnicos) para habilitar los siguientes productos para **MySQL Server >= 5.7 y/o MariaDB >= 10.1**. 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   * Crux
-  * Serviteca+  * Serviteca + Antlia
   * Alerce (Trébol)   * Alerce (Trébol)
 +  * Remuneraciones
 +  * Contabilidad (en progreso - [[user>lmachuca]])
  
 </note> </note>
Línea 51: Línea 56:
 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. 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.
  
-Para plataformas web basadas en PHP, las versiones de Producción de PHP en Debian son las siguientes:+=====Programación=====
  
-  * Debian 8: PHP 5.6.36 +Esta sección describe la disponibilidad de los lenguajes y motores oficialmente soportados por el Backend de Helpcom.
-  * Debian 9 (Stable): PHP 7.0.49 +
-  * Debian 10: PHP 7.1.30 +
-  * :!: Debian **Unstable / Experimental**: PHP 7.2.62 +
-  * Ubuntu 14: PHP 5.5.9 +
-  * Ubuntu 16: PHP 7.0.30. +
-  * Ubuntu 18 (LTS): PHP 7.2.4.+
  
->Se espera que PHP 7.1 esté disponible para Debian 9 (Stable) a inicios de 2019.+====PHP====
  
->Se espera que PHP 7.2 esté disponible para Debian 10 (Testinga inicios de 2019.+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 9 (Stable): PHP 7.0.49 (Enero 2019) 
 +  * Debian 10: PHP 7.4.0 (Enero 2020) 
 +  * Debian **Unstable / Experimental**: PHP 7.4.0 
 +  * Ubuntu 16 (LTS): PHP 7.0.30. 
 +  * Ubuntu 18 (LTS): PHP 7.2.60. 
 +  * Ubuntu 20 (LTS): PHP 7.3.0.
  
 <note info>**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.</note> <note info>**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.</note>
  
-Para plataformas web basadas en Pythonlas versiones de Producción de Python en Debian son las siguientes:+El gestor de paquetes para PHP 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 seguridadinstalar 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 . El nombre de ejecutable es ''composer-local''.
  
-(PENDIENTE)+====Python====
  
-=====Java===== +Python 2 se encuentra fuera de su periodo de soporte y se mantiene sólo por proyectos comunitariosA menos que sea estrictamente necesario por toma de requerimientoslos desarrollos en Python debieran empezar en Python ≥ 3.4.
-El motor de Java por defecto para plataformas Linux es **OpenJDK 9** / Icedtea 1.9, en general compatible con Java 9Los 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.+Para plataformas basadas en Pythonlas 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).
  
-<note>Por requisitos externos, la plataforma 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 [[user>mrodriguez]] - [[user>ytorres]].+Los nombres de paquete a instalar en Debian son ''python-2.7-dev'' y ''python-3.4-dev''. [[f1:Python|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''. [[f1:Python|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. 
 + 
 +<note>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 [[user>mrodriguez]] - [[user>ytorres]].
 </note> </note>
  
 Los siguientes son los JDK disponibles para Producción en las versiones de Debian / Ubuntu: Los siguientes son los JDK disponibles para Producción en las versiones de Debian / Ubuntu:
  
-  * Debian 7: OpenJDK 7u171 (descontinnuado). +  * Debian 7: OpenJDK 7u171 (descontinuado). 
-  * Debian 8: OpenJDK 8u181 (descontinuado), 8u171+  * Debian 8: OpenJDK 8u212 (Marzo 2019). 
-  * Debian 9 (Stable): OpenJDK 8u181, 9u181. +  * Debian 9 (Stable): OpenJDK 8u212, 9u181 (Marzo 2019)
-  * Debian 10 / Experimental: OpenJDK 8u181, 10u12.+  * Debian 10 / Experimental: OpenJDK 8u212<del>10u12</del> 11u2 (Marzo 2019).
   * Ubuntu 16: OpenJDK 8u162, 9u114.   * Ubuntu 16: OpenJDK 8u162, 9u114.
-  * Ubuntu 18 (LTS): OpenJDK 8u181, OpenJDK11u8.+  * Ubuntu 18 (LTS): OpenJDK 8u196, OpenJDK11u8
 + 
 +El nombre de paquete a instalar en Debian es ''openjdk-9-jdk'' en adelante. [[f1:Java|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.
  
   * Seguir el estado de la paquetería en [[https://packages.debian.org/search?suite=default&section=all&arch=any&searchon=names&keywords=openjdk|Debian]], [[https://packages.ubuntu.com/search?suite=all&section=all&arch=any&keywords=openjdk&searchon=names|Ubuntu]].   * Seguir el estado de la paquetería en [[https://packages.debian.org/search?suite=default&section=all&arch=any&searchon=names&keywords=openjdk|Debian]], [[https://packages.ubuntu.com/search?suite=all&section=all&arch=any&keywords=openjdk&searchon=names|Ubuntu]].
 +
 +  * [[f1:Java|Java en Debian]].
 +
 +====Lua====
 +
 +[[wp>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 [[wp>GCC]], y ''libc++'' que usa el toolkit de [[wp>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.
 +
 +
  
 {{tag>Producción Desarrollo}} {{tag>Producción Desarrollo}}
  
produccion.1543432318.txt.gz · Última modificación: 2018/11/28 19:11 por lmachuca
CC Attribution-Noncommercial-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0