Tuesday, 19 April 2016

A Step By Step Guide For Deploying & Managing A PHP Application On Docker LAMP, LAPP, And LAOP Stacks


Una guía paso a paso para implementar y gestionar aplicaciones PHP en acoplable LAMP, LAPP, Y LAOP Pilas

Para ejecutar y administrar las 9 plantillas de aplicaciones PHP (LAMP, LAPP, y LAOP Pilas) en este proyecto en 13 diferentes nubes y las plataformas de virtualización (incluyendo vSphere, OpenStack, AWS, Rackspace, Microsoft Azure, Google Compute Engine, digitalocean, IBM SoftLayer, etc.), asegúrese de que sea:
Imagen
Personalizar y ejecutar cualquiera de las plantillas publicadas acoplable PHP aplicación (incluyendo la lámpara, LAPP, y LAOP Pilas) y muchos otros modelos (con inclusión de varios niveles pilas de aplicaciones Java, Mongo conjunto de réplicas en Racimo, Drupal, Wordpress, MEAN.JS, etc. )

Fondo

Contenerización de aplicaciones de la empresa sigue siendo un desafío sobre todo porque los marcos de composición de aplicaciones existentes no abordan dependencias complejas, integraciones externas o auto-escala flujos de trabajo de post-prestación. Por otra parte, el diseño efímero de contenedores significa que los desarrolladores tenían que girar nuevos contenedores y volver a crear las complejas dependencias y integraciones externas con cada actualización de versión.
DCHQ, disponible en versiones alojados y en las instalaciones, se dirige a todos estos retos y simplifica la contenerización de las aplicaciones empresariales a través de un marco de composición de aplicaciones avanzadas que se extiende acoplable Componer con asociaciones de variables de entorno-imagen Cruz, escritura del golpe plug-ins extensibles que pueden ser invocado durante la petición o posterior a la disposición, y la agrupación de aplicaciones de alta disponibilidad a través de múltiples hosts o regiones con soporte para escalado automático.
Una vez que se aprovisiona una aplicación, un usuario puede monitorizar la CPU, memoria, I / O y de los contenedores de funcionamiento, recibir notificaciones y alertas, y obtener acceso a las copias de seguridad de aplicaciones, la escala automática de entrada / salida de flujos de trabajo, y el plug-in de los flujos de trabajo de ejecución de actualizar contenedores en funcionamiento. Por otra parte, automatizada "App Run" permite a los usuarios integrar sus flujos de trabajo de integración continua para programar la distribución de contenedores para sus formaciones de la noche o cuando se produzcan cambios se fusionan en GitHub.
En los blogs anteriores, hemos demostrado la automatización de implementación de un extremo a extremo de las diversas aplicaciones de Java (como Pizza Shop y tienda de la película aplicaciones) en pilas de aplicaciones basadas en acoplable de varios niveles a través de 13 diferentes nubes y las plataformas de virtualización. Para la lista completa de estos blogs, se puede visitar esta página: http://dchq.co/docker-java-applications.html
Sin embargo muchos usuarios aún estaban confundidos sobre algunos de los aspectos fundamentales de modelado de aplicaciones. Estas preguntas incluyen:
  • ¿De dónde proceden estas variables de entorno provienen en su plantilla de aplicación basada en YAML?
  • ¿Cómo es la base de datos inicializado con los esquemas apropiados necesarios desde mi aplicación PHP?
Para abordar estas cuestiones, hemos creado una muestra de aplicaciones PHP "nombres de directorio" en este proyecto GitHub que se puede implementar en estas pilas de aplicación:

  • Acoplable LAMPARA Pila (Linux-Apache-MySQL-PHP)
  • Acoplable LAPP Pila (Linux-Apache-PHP-PostgreSQL)
  • Acoplable LAOP Pila (Linux-Apache-PHP-Oracle)
En este proyecto, vamos a proporcionar una guía paso a paso para configurar, desplegar y gestionar esta aplicación PHP usando diferentes pilas de aplicaciones y en diferentes infraestructuras de nube / virtual.
Vamos a cubrir:
  • Configuración del config.php de la aplicación PHP
  • La inicialización de la base de datos para la aplicación PHP
  • La construcción de la ventana acoplable imagen utilizando php: 5,6-apache
  • La construcción de las plantillas de aplicación basada en YAML que pueden volver a utilizarse en cualquier sistema Linux corriendo en cualquier parte
  • Aprovisionamiento y de auto-escalar la infraestructura subyacente en cualquier nube (con Rackspace es el ejemplo en este blog)
  • Despliegue de la aplicación PHP de varios niveles en el clúster Rackspace
  • El control de la CPU, memoria y E / S de los contenedores Operando
  • Activación de la integración continua mediante la aplicación automatizada de Ejecución
  • El escalado horizontal de la aplicación PHP

Configurando el config.php La aplicación PHP

Puede clonar esta muestra de aplicaciones PHP "nombres de directorio" de GitHub.
Este es el paso más importante en su aplicación PHP "Dockerizing". Con el fin de aprovechar las variables de entorno que puede pasar cuando se ejecuta contenedores, tendrá que asegurarse de que su aplicación se configura de una manera que le permitirá cambiar ciertas propiedades durante la petición - como:
  • El controlador de base de datos que desea utilizar
  • La base de datos de URL
  • Las credenciales de base de datos
  • Cualquier otro parámetro que desea cambiar en el momento de la solicitud (por ejemplo, el / min tamaño máximo del grupo de conexión, tiempo de espera, etc.)
Para lograr esto, primero tendrá que configurar config.php .
Imagen
Usted se dará cuenta de que las propiedades de fuente de datos específicos hacen referencia a las siguientes variables de entorno que se transmitirán durante la petición:
  • DB_HOST
  • DB_USER
  • DB_PASS
  • DB_NAME
  • DB_PROVIDER
  • DB_PORT

La inicialización de la base de datos para la aplicación PHP

Normalmente, recomendamos inicializar el esquema de base de datos como parte de la implementación de aplicaciones PHP en sí. De esta manera, usted no tiene que preocuparse por el mantenimiento de los archivos de SQL separados que deben ser ejecutadas en la base de datos por separado.

Sin embargo si ya tiene esos archivos SQL y todavía ellos prefieren que se ejecuta en la base de datos por separado - a continuación, DCHQ puede ayudar a automatizar este proceso a través de su marco plug-in. Se puede hacer referencia a esta sección para obtener más información.
Con el fin de incluir los scripts SQL para crear las tablas de base de datos en la aplicación PHP, tendrá que configurar Persistence.php archivo para poblar la base de datos utilizando diferentes sentencias SQL (dependiendo de la base de datos utilizada). La función populateDatabase () funciona con MySQL, PostgreSQL y Oracle.
Imagen

La construcción de la ventana acoplable imagen utilizando PHP: 5,6-Apache

Una vez configurada la aplicación PHP, sólo hay que crear una imagen acoplable con su código PHP.
Después de registrarse en DCHQ (ya sea el DCHQ.io instalado o la versión on-premise), un usuario puede navegar a la  creación de imágenes y haga clic en el + botón para crear un nuevo Dockerfile (Git / GitHub / BitBucket) de creación de imágenes.
Proporcionar los valores requeridos de la siguiente manera:
  • Git Branch - este campo es opcional - pero un usuario puede especificar una rama de un proyecto de GitHub. La rama por defecto es el amo.
  • Credenciales Git - un usuario puede almacenar las credenciales a un repositorio GitHub privado con seguridad en DCHQ. Esto se puede hacer mediante la navegación a los proveedores de nube  y hacer clic en el + para seleccionar Credenciales
  • Cluster - la construcción de imágenes Docker se instrumenta a través del agente DCHQ. Como resultado, un usuario tiene que seleccionar un clúster en el que se usa un agente para ejecutar la construcción de imágenes acoplables. Si un clúster no se ha creado todavía, por favor refiérase a esta sección para registrar ya sea anfitriones ya se está ejecutando o automatizar el aprovisionamiento de nueva infraestructura virtual.
  • Push to Registro - un usuario puede empujar a la imagen de nueva creación ya sea en un repositorio público o privado en el estibador de concentradores o Quay. Para registrar una cuenta de concentradores o acoplable Quay, un usuario debe navegar hasta   Proveedores y Repos nube y hacer clic en el + para seleccionar Docker Registros
  • Repositorio - este es el nombre del repositorio en el que será empujado la imagen. Por ejemplo, nuestra imagen fue empujado a DCHQ / php-ejemplo: últimas
  • Tag - este es el nombre de la etiqueta que le gustaría dar a la nueva imagen. Los nombres de las etiquetas soportadas en DCHQ incluyen:
    • {{}} Fecha - fecha formateada
    • {{}} marca de tiempo - el sello de tiempo completo
  • Expresión Cron - un usuario puede programar la construcción de imágenes Docker usando expresiones cron fuera de la caja. Esto facilita diurno y nocturno construye para los usuarios.
Una vez que se hayan completado los campos obligatorios, un usuario puede hacer clic en Guardar .

Un usuario puede hacer clic en el botón Reproducir para construir la imagen acoplable a la carta.
Imagen
Aquí está la Dockerfile real que se utiliza para construir esta imagen acoplable de este repositorio GitHub:
Imagen

La construcción de las plantillas de aplicación YAML-base que pueden volver a utilizarse en cualquier sistema Linux se ejecuta en cualquier lugar

Después de registrarse en DCHQ (ya sea el DCHQ.io instalado o la versión on-premise), un usuario puede navegar a  App & Machine y luego haga clic en el + botón para crear un nuevo acoplable Componer plantilla.
Hemos creado 9 plantillas de aplicaciones que utilizan las imágenes oficiales de estibador de concentradores para la misma aplicación PHP "nombres de directorio" - pero por diferentes servidores de aplicaciones y bases de datos.
Las plantillas incluyen ejemplos de las siguientes pilas de aplicaciones (por la misma aplicación PHP):
  • Acoplable LAMPARA Pila (Linux-Apache-MySQL-PHP)
  • Acoplable LAPP Pila (Linux-Apache-PHP-PostgreSQL)
  • Acoplable LAOP Pila (Linux-Apache-Oracle-XE-PHP)
  • Acoplable LAMPARA Pila (3-Tier Nginx-PHP-MySQL)
  • Acoplable LAPP Pila (3-Tier Nginx-PHP-PostgreSQL)
  • Acoplable LAOP Pila (3-Tier Nginx-PHP-Oracle-XE)
  • Acoplable LAMPARA Pila (3-Tier Apache HTTP-PHP-MySQL)
  • Acoplable LAPP Pila (3-Tier Apache HTTP-PHP-PostgreSQL)
  • Acoplable LAOP Pila (3-Tier Apache HTTP-PHP-Oracle-XE)

Asociaciones de variables medioambientales en todas las Imágenes

Además, un usuario puede crear imagen-cruz asociaciones de variables de entorno, haciendo referencia a la variable de entorno de otra imagen. En este caso, hemos hecho varias fijaciones - incluyendo DB_HOST = {{MySQL | container_private_ip}} - en la que el IP contenedor de base de datos se ha resuelto de forma dinámica durante la petición y se utiliza para garantizar que el servidor Apache-PHP puede establecer una conexión con el base de datos.
Aquí está una lista de valores de variables de entorno soportados:
  • {{alphanumeric | 8}} - crea una cadena alfanumérica de 8 caracteres al azar. Esto es muy útil para crear contraseñas aleatorias.
  • {{Image Name | ip}} - le permite introducir la dirección IP del host de un recipiente como un valor para una variable de entorno. Esto es muy útil para permitir que el nivel de middleware para establecer una conexión con la base de datos.
  • {{Image Name | container_ip}} - le permite introducir el nombre de un recipiente como un valor para una variable de entorno. Esto es muy útil para permitir que el nivel de middleware para establecer una conexión segura con la base de datos (sin exponer el puerto de base de datos).
  • {{Image Name | container_private_ip}} - le permite introducir la dirección IP interna de un recipiente como un valor para una variable de entorno. Esto es muy útil para permitir que el nivel de middleware para establecer una conexión segura con la base de datos (sin exponer el puerto de base de datos).
  • {{Image Name | port_Port Number}} - le permite introducir el número de puerto de un recipiente como un valor para una variable de entorno. Esto es muy útil para permitir que el nivel de middleware para establecer una conexión con la base de datos. En este caso, el número de puerto especificado tiene que ser el número de puerto interno - es decir, no el puerto externo que se asigna al recipiente. Por ejemplo, {{PostgreSQL | port_5432}} será traducido al puerto externo real que permitirá que la capa de middleware para establecer una conexión con la base de datos.
  • {{Image Name | Environment Variable Name}} - le permite introducir el valor de la variable de entorno de una imagen en la variable de entorno de otra imagen. Los casos de uso son infinitas - como la mayoría de las aplicaciones de varios niveles tendrán dependencias imagen cruz.

LAMPARA Pila (Linux-Apache-MySQL-PHP)

Imagen
Imagen

LAPP Pila (Linux-Apache-PHP-PostgreSQL)

Imagen
Imagen

LAOP Pila (Linux-Apache-PHP-Oracle)

Imagen
Imagen

LAMPARA Pila (3-Tier Nginx-PHP-MySQL)

Imagen
Imagen

LAPP Pila (3-Tier Nginx-PHP-PostgreSQL)

Imagen
Imagen

LAOP Pila (3-Tier Nginx-PHP-Oracle-XE)

Imagen
Imagen

LAMPARA Pila (3-Tier ApacheHTTP-PHP-MySQL)

Imagen
Imagen

LAPP Pila (3-Tier ApacheHTTP-PHP-PostgreSQL)

Imagen
Imagen

LAOP Pila (3-Tier ApacheHTTP-PHP-Oracle-XE)

Imagen
Imagen

La invocación de un plug-in para inicializar la base de datos por separado en un estibador LAMPARA Pila

Recomendamos inicializar el esquema de base de datos como parte de la implementación de aplicaciones PHP en sí. Sin embargo, si aún prefiere ejecutar los archivos SQL en la base de datos por separado - a continuación, DCHQ puede ayudar a automatizar este proceso a través de su marco plug-in.

En este ejemplo, MySQL en esta pila LAMP está invocando un plug-in script bash para ejecutar el archivo populate.sql. El plug-in de escritura del golpe fue creado por la navegación hacia  Plug-ins y se ve algo como esto:
Imagen
En este plug-in de escritura del golpe, $ MYSQL_USER , $ MYSQL_ROOT_PASSWORD , y $ MYSQL_DATABASE son variables de entorno que se pasan durante la petición.
$ file_url es un argumento overrideable que puede definir al crear el plug-in o al solicitar la aplicación. Esta será la dirección del archivo populate.sql.

Aprovisionamiento y auto-escala la infraestructura subyacente En Cualquier Nube

Una vez que se guarda una aplicación, un usuario puede registrar un proveedor de nube para automatizar el aprovisionamiento y la auto-escala de los racimos en 12 diferentes nube de puntos finales, incluyendo VMware vSphere, OpenStack, CloudStack, Servicios Web de Amazon, Rackspace, Microsoft Azure, digitalocean, IBM SoftLayer, Google Compute Engine, y muchos otros.
En primer lugar, un usuario puede registrar un proveedor de nube de Rackspace (por ejemplo) navegando a proveedores de la nube  y luego hacer clic en el + botón para seleccionar Rackspace . La clave de API de Rackspace debe ser proporcionada - que puede ser recuperada de la sección Configuración de la cuenta del Panel de control Rackspace Cloud.

Un usuario puede crear un clúster con una política de auto-escala para girar automáticamente los nuevos servidores de la nube. Esto puede hacerse navegando a Clusters página y luego hacer clic en el + botón. Puede seleccionar una política de colocación basadas en la capacidad y luego Tejer como la capa de red con el fin de facilitar la comunicación-contenedor cruz protegido por contraseña segura a través de múltiples hosts dentro de un grupo. La política de auto-escala , por ejemplo, puede establecer el número máximo de VM (o Servidores Cloud) a 10.
Un usuario puede ahora suministrar un número de Servidores Cloud en el clúster recién creado ya sea a través del flujo de trabajo basado en la interfaz de usuario o mediante la definición de una plantilla de máquina de composición basada en YAML simple que puede ser solicitada a la Biblioteca de autoservicio.

Flujo de trabajo basado en la interfaz de usuario - Un usuario puede solicitar servidores de la nube de Rackspace navegando a Máquinas y luego hacer clic en el + botón para seleccionar Rackspace . Una vez seleccionado el proveedor de la nube, un usuario puede seleccionar la región, el tamaño y la imagen sea necesario. Los puertos se abren de forma predeterminada en los servidores de la nube de Rackspace para dar cabida a algunos de los requisitos de puerto (por ejemplo, 32000-59000 para Docker, 6783 para la armadura, y 5672 para RabbitMQ). Un racimo Luego se activa y el número de Servidores Cloud se puede especificar.

Plantilla Componer máquina basada en YAML - Un primer usuario puede crear una plantilla de máquina de componer para Rackspace navegando a Máquinas y luego seleccionar la máquina de composición .
Aquí está la plantilla para la solicitud de un servidor de la nube de 4 GB.
Los parámetros admitidos para la plantilla de la máquina de composición se resumen a continuación:
  • Descripción : Descripción del modelo / plantilla
  • instanceType : Nube proveedor de valor específico (por ejemplo general1-4)
  • región : Nube proveedor de valor específico (por ejemplo IAD)
  • Imagen : Obligatorio - completo la imagen ID / nombre (por ejemplo IAD / 5ed162cc-b4eb-4371-b24a-a0ae73376c73 o vSphere VM Template nombre)
  • nombre de usuario : Opcional - sólo para vSphere VM Template nombre de usuario

  • contraseña : Opcional - sólo para vSphere VM Template contraseña cifrada. Puede cifrar la contraseña utilizando el punto final https://www.dchq.io/#/encrypt
  • la red : Opcional - Nube proveedor de valor específico (por ejemplo, por defecto)
  • SecurityGroup : Nube proveedor de valor específico (por ejemplo DCHQ-seguridad-grupo)
  • KEYPAIR : Nube proveedor de valor específico (por ejemplo, clave privada)
  • OpenPorts : Opcional - valores de los puertos separados por comas
  • cuentan : Nº total de VM, por defecto es 1.
Una vez que se guarda la plantilla de la máquina de composición, un usuario puede solicitar esta máquina desde el autoservicio Biblioteca . Un usuario puede hacer clic en Personalizar y, a continuación, seleccione el proveedor de la nube y el clúster de usar para el aprovisionamiento de estos servidores de Rackspace Cloud.

Distribución de la multi-nivel de aplicación PHP en el clúster Rackspace

Una vez que los Servidores Cloud se aprovisionan, un usuario puede desplegar un multi-capas, las aplicaciones basadas en PHP estibador en los nuevos servidores de la nube. Esto puede hacerse navegando a la Biblioteca de autoservicio y luego hacer clic en Personalizar para solicitar una aplicación multi-nivel.
Un usuario puede seleccionar una Etiqueta para el Medio Ambiente (como DEV o QE) y el Cluster Rackspace creado antes de hacer clic en Ejecutar.

En el acceso a la Terminal-Browser para los contenedores para correr

Un icono de símbolo del sistema debe estar disponible junto a los nombres de los recipientes en la página de aplicaciones en vivo. Esto permite a los usuarios introducir el recipiente usando un protocolo de comunicación segura a través de la cola de mensajes del agente. Una lista blanca de comandos se puede definir por el inquilino de administración para garantizar que los usuarios no hacen ningún cambio perjudicial en los contenedores de funcionamiento.
Para el despliegue de PHP, por ejemplo, se utilizó el símbolo del sistema para asegurarse de que el código PHP es de hecho bajo el var / www / html / /.

Imagen

El monitoreo de la CPU, memoria e I O Utilización / de los contenedores Operando

Una vez que la aplicación está en funcionamiento, nuestros desarrolladores monitorear la CPU, memoria, I / O y de los contenedores de funcionamiento para recibir alertas cuando estas métricas superan un umbral predefinido. Esto es especialmente útil cuando nuestros desarrolladores están realizando pruebas funcionales y de carga.
Un usuario puede realizar el seguimiento del análisis histórico y correlacionar las cuestiones a las actualizaciones de contenedores o construir implementaciones. Esto se puede hacer haciendo clic en el Acciones menú de la aplicación en ejecución y después de Monitoreo . Un intervalo de fechas personalizado se puede seleccionar para ver la CPU, memoria y E / S históricamente.

Permite la integración continua mediante la aplicación automatizada de Ejecución

Para los desarrolladores que deseen seguir el modelo de contenedores "inmutables" mediante la reconstrucción de imágenes acoplables que contienen el código de la aplicación y que hacen girar nuevos contenedores con cada actualización de la aplicación, DCHQ proporciona una compilación de imágenes automatizado y características aplicación ejecutar procedimientos automáticos que permiten a los desarrolladores crear automáticamente imágenes acoplables de Dockerfiles o proyectos de GitHub privado que contiene Dockerfiles, y luego girar pilas total de la lámpara utilizando las últimas imágenes de la programación de la implementación de aplicaciones y la personalización de la aplicación de arrendamiento.
Como se explica en la creación de imágenes acoplable sección , un usuario puede programar dos paralelas construye la imagen de PHP (que se basa en php: 5,6-Apache ).
  • última : una acumulación constante anulará la última etiqueta con los últimos cambios comprometidos con su proyecto GitHub
  • {{fecha}} o {{}} marca de tiempo : una construcción paralela que realizará una copia de seguridad de todos las imágenes creadas usando ya sea una fecha con formato o marca de tiempo para el nombre de la etiqueta
Un usuario puede desplazarse a Imagen construye y luego haga clic en el + botón para crear una nueva política de "Automated App Ejecutar". Un usuario puede completar los campos obligatorios - como:
  • Nombre de aplicación : el nombre que se le dará a la aplicación desplegada
  • Arrendamiento : de forma predeterminada, se selecciona una concesión ilimitada. Sin embargo una ejecución de aplicación automatizada es más útil para entornos / PRUEBA DEV donde los usuarios están esperando una aplicación ya se está ejecutando con el último código cada vez que entran a la oficina por la mañana. Por eso, los usuarios pueden proporcionar un contrato de arrendamiento de 1 día o 1 semana - en función de sus necesidades.
  • Blueprint : un usuario puede buscar una plantilla ya creada basada en YAML aplicación (o plano) - similar a los ejemplos dados en este proyecto.
  • Cluster : este es el clúster en el que se despliega la aplicación. Un usuario sólo verá una lista de grupos a los que él / ella se le ha dado acceso.
  • Expresión Cron : la implementación de la aplicación se puede programar el uso de estas expresiones cron simples. Por ejemplo, 0 45 15? * LUN-VIE se disparará de la implementación de aplicaciones en tiempo de 15:45 GMT de lunes a viernes.
  • ¿Quién puede administrar : un usuario puede proporcionar derechos granulares aquí para dictar quién más puede gestionar esta política "de la aplicación Ejecutar".
Imagen

Escalar la solicitud de PHP

Si la aplicación que se ejecuta queda limitada de recursos, un usuario puede escalar a cabo la aplicación para satisfacer el aumento de la carga. Por otra parte, un usuario puede programar la escala a cabo durante el horario laboral y la escala en los fines de semana, por ejemplo.

Para escalar el conjunto de recipientes de PHP desde 1 hasta 2, un usuario puede hacer clic en el Acciones menú de la aplicación en ejecución y seleccione Escala de salida . Un usuario puede especificar el nuevo tamaño para el clúster y luego haga clic en Ejecutar ahora .

A continuación, utiliza el BASH plug-in para actualizar el archivo httpd.conf de Apache HTTP Server para que esté al tanto del nuevo servidor de aplicaciones añadido. Los plug-ins de escritura del golpe también se pueden programar para dar cabida a los casos de uso como la limpieza de registros o actualizar las configuraciones en las frecuencias definidas.
Para ejecutar un plug-in en un contenedor de funcionamiento, un usuario puede hacer clic en el Acciones menú de la aplicación que se ejecuta y luego seleccione Plug-ins . Un usuario puede seleccionar el equilibrador de carga de contenedores (Apache HTTP Server), buscar el plug-in que necesita ser ejecutado, permitir el reinicio contenedor utilizando el botón de activación. El argumento por defecto para este plug-in se resolverá de forma dinámica todo el recipiente de IP de los contenedores de PHP en ejecución y añadirlos como parte del archivo httpd.conf.
Una línea de tiempo de la aplicación está disponible para realizar un seguimiento de todos los cambios realizados a la solicitud de auditoría y de diagnóstico. Esto se puede acceder desde el menú extensible en la parte inferior de la página de una aplicación en ejecución.
Las alertas y notificaciones están disponibles para cuando los contenedores o sistemas principales son, o cuando la CPU y memoria La utilización de cualquiera de los anfitriones o contenedores supera un umbral definido.

Conclusión

Contenerización de aplicaciones PHP de la empresa sigue siendo un desafío sobre todo porque los marcos de composición de aplicaciones existentes no abordan dependencias complejas, integraciones externas o auto-escala flujos de trabajo de post-prestación.
DCHQ, disponible en versiones alojados y en las instalaciones, se dirige a todos estos retos y simplifica la contenerización de las aplicaciones empresariales de PHP a través de un marco de composición solicitud previa que facilita enlaces de variables de entorno-imagen Cruz, extensibles escritura del golpe plug-ins que se pueden invocar en solicitar tiempo o después de la prestación, y la agrupación de aplicaciones de alta disponibilidad a través de múltiples hosts o regiones con soporte para escalado automático.
Inscríbete GRATIS en http://DCHQ.io o descargar DCHQ On-Premise  
para obtener acceso a las plantillas de aplicaciones PHP de varios niveles fuera de la caja junto con la funcionalidad de gestión del ciclo de vida de aplicaciones como monitoreo, actualizaciones de contenedores, la escala de entrada / salida y la entrega continua.





No comments:

Post a Comment