Desplegar un servicio backend HTTP en C4C7OPS
Introducción En este breve post, te ofreceremos una guía práctica para desplegar de manera rápida y sencilla un proyecto backend HTTP utilizando nuestra plataforma C4C7OPS. A modo de ilustración, tomaremos como ejemplo u

Introducción
En este breve post, te ofreceremos una guía práctica para desplegar de manera rápida y sencilla un proyectobackendHTTP utilizando nuestra plataforma C4C7OPS.
A modo de ilustración, tomaremos como ejemplo un proyecto escrito en el lenguaje Go, el cual se encuentra funcionando localmente en el puerto 8080. (El código fuente del proyecto que utilizaremos como ejemplo está disponible en el siguiente repositoriohttps://github.com/c4c7us-cloud/backend-demo)

Requisitos
Como requisitos de nuestro proyecto este debe contar con al menos unendpointque nos sirva dehealthcheck indicándonos que la aplicación se levanto correctamente, este nos debe responder con unstatuscode200, para el ejemplo particular elendpointdehealthcheckse encontrara en/api/demo/health-check; Cuando lo consultamos de forma local nos responde lo siguiente:

Adicional tendremos otroendpoint(/api/demo/hello-world) como demostración de cualquier otra ruta que se puede configurar dentro de nuestro código.

Si deseamos exponer el servicio anterior utilizando nuestra plataforma, debemos realizar el inicio de sesión correspondiente y asegurarnos de haber realizado las configuraciones previas necesarias; estas configuraciones incluyen la configuración de las claves de API de nuestro proveedor de servicios en la nube, haber creado un dominio y un entorno, así como haber registrado las claves de Git en nuestro administrador de repositorios en línea, ya sea GitHub, GitLab o Bitbucket.
Configuración
Una vez que hayamos cumplido con las configuraciones descritas anteriormente, desplegar nuestro servicio es un proceso sencillo y amigable. Primero, nos dirigimos a la sección de microservicios en el menú principal. Luego, seleccionamoscreatey procedemos a registrar los parámetros del servicio que crearemos, utilizando como base nuestro proyecto. A continuación, se describen los parámetros a tener en cuenta:
- Nombre con el que vamos a distinguir el servicio dentro C4C7OPS.
- El repositorio donde se encuentra alojado nuestro código en internet, en nuestro caso como el repositorio se está en Github luce de la siguiente manera:

- Tipo de servicio, en nuestro caso será un service, pero existen diferentes opciones como lo sonworkers,schedule tasksolambdas.
- Build perteneciente al servicio en cuestión (lenguaje/framework y versión).
- Tipo de acceso que va a tener el servicio ya sea público o privado, si escogemos privado el servicio solo es accesible por otros servicios que se encuentren desplegados en la misma red vpc.
- Elprefix pathbajo el cual van a estar losendpointde nuestra aplicación.
- La ruta delhealthcheck(tema tratado en un punto anterior).
Una vez configurado debe lucir similar a la siguiente imagen, entonces pulsamos el botón “Save”.

Verificamos que se creó exitosamente.
Es crucial configurar algunas variables antes de intentar realizar cualquier despliegue de un nuevo servicio en cualquier ambiente. Por lo tanto, ingresamos a la sección desettingsdel ambiente seleccionado. En esta sección, encontraremos la posibilidad de configurar las variables necesarias para que el despliegue sea exitoso.
Una vez que estemos en la sección desettings, podemos configurar los parámetros con los cuales se ejecutará el servicio. Estos parámetros incluyen:
- Cpu units: Aquí podemos asignar la cantidad de unidades de CPU que se destinarán al servicio. Esto puede ser útil para ajustar el rendimiento en función de la intensidad de procesamiento de nuestra aplicación.
- Memory: Aquí podemos establecer la cantidad de memoria asignada al servicio. Dependiendo de las necesidades de nuestra aplicación, podemos aumentar o disminuir la cantidad de memoria asignada para garantizar un rendimiento óptimo.
- Minimumandmaximumof instances: Podemos especificar la cantidad mínima y máxima de instancias del servicio que deseamos que se ejecuten simultáneamente. Esto nos permite controlar la escalabilidad horizontal del servicio y adaptarlo a la carga esperada.
- Health check grace period in seconds: Este parámetro que se configura en número de segundos para determinar cuál es el tiempo máximo de espera para obtener una respuesta delendpointque se configura comohealthcheck.
- CPU percentage to scale:El porcentaje de uso de CPU lo configuramos para controlar el rendimiento de las instancias. Si se alcanza ese porcentaje, y la configuración lo permite, se inicia una nueva instancia para distribuir la carga de trabajo y evitar la sobrecarga.
- Memory percentage to scale: Este parámetro lo configuramos para controlar el rendimiento de las instancias. Si se alcanza ese porcentaje, y la configuración lo permite, se inicia una nueva instancia.
- Spot instance percentage: Este parámetro lo configuramos para determinar el porcentaje de las instancias del servicio que van serán de tipo spot, recordando que una instancia de tipo spot son instancias más económicas pero a su vez más inestables.
Recuerda que es importante ajustar estos parámetros de manera adecuada para lograr un equilibrio óptimo entre el rendimiento y los recursos asignados.
Después de seleccionar los valores deseados los guardamos, adicionalmente si nuestro proyecto requiere variables de entorno para su funcionamiento o configuración, estas las podemos agregar en la pestaña llamadaenvironmentvariables.

Despliegue
Una vez que hayamos designado los recursos y configurado las variables de entorno, podemos proceder con el despliegue del proyecto en el ambiente deseado. Para ello, nos dirigimos a la opción dedeploysen el menú, y al seleccionarcreate, ingresamos el nombre de la etiqueta (tag), rama ocommitque queremos desplegar del código fuente. En el caso de nuestro ejemplo, utilizaremos la ramamain/master.
Al ingresar el nombre de la etiqueta o rama, la plataforma iniciará el proceso de despliegue utilizando el código fuente correspondiente. Esto implica la compilación, construcción y ejecución del proyecto utilizando los recursos y variables de entorno previamente configurados.
Al presionar el botóncreatese inicIara el lanzamiento del proyecto y solo queda aguardar que el mismo se realice de forma exitosa, de igual manera podemos ver la etapa y el estado en el que se encuentra eldeploy, que de ser exitoso lucirá como la siguiente imagen.

Durante el proceso de despliegue, podemos visualizar en detalle las instancias que se crean para alojar el servicio. La cantidad de instancias se determina por el valor asignado a la variable de configuraciónminimum of instances. En la imagen anterior, se puede ver el estado de la instancia, su identificación (ID) y a qué despliegue pertenece.
Verificación
Finalmente con nuestro servicio desplegado podemos acceder a losendpointsque este expone mediante de internet, esto apuntando al dominio que tenga asociado el ambiente donde se desplegó el servicio, y respetando elprefixpathque se configuró al momento de la creación, como ejemplo de ellos a continuación se muestran los resultados de consultarlosendpointsque teníamos de manera local, una vez finalizado el despliegue.

Resumen
En resumen, a lo largo de este post logramos realizar el despliegue de un servicio backend HTTP que inicialmente se encontraba corriendo de forma local. Mediante nuestra plataforma C4C7OPS, logramos exponer este servicio a internet. Los pasos clave que seguimos fueron:
- Creación y configuración del nuevo microservicio: Definimos el tipo de microservicio, el lenguaje de programación utilizado y el repositorio donde se encuentra alojado.
- Configuración de variables de instancia: Establecimos las variables que describen el comportamiento de las instancias donde se ejecutará el servicio. Esto incluye aspectos como el número mínimo de instancias requeridas.
- Despliegue del servicio en un entorno específico: Lanzamos el despliegue del servicio en el entorno deseado. Esto resultó en que nuestro servicio quedara expuesto y accesible para el público que deseamos alcanzar.
En resumen, logramos migrar exitosamente nuestro serviciobackendlocal a un entorno en línea, permitiendo que esté disponible públicamente usando nuestra plataforma C4C7OPS.
Flujo de despliegue de un servicio backend HTTP en C4C7OPS
C4C7OPS, la plataforma de Codifly, permite desplegar servicios backend HTTP en cuestión de minutos sin necesidad de gestionar infraestructura manualmente. El proceso se reduce a conectar tu repositorio, configurar el endpoint de health check y dejar que la plataforma se encargue del build, el enrutamiento y la disponibilidad del servicio.
Soporta múltiples lenguajes —Go, Node.js, Python, Java, entre otros— y expone métricas de salud y rendimiento desde el primer despliegue. Esto convierte a C4C7OPS en una opción práctica tanto para prototipos rápidos como para cargas de trabajo en producción.
- 1Prepara tu proyecto localmenteAsegúrate de que tu backend exponga al menos un endpoint de health check que devuelva HTTP 200 (por ejemplo, /api/demo/health-check). C4C7OPS lo usará para confirmar que la aplicación arrancó correctamente.
- 2Conecta tu repositorio a C4C7OPSVincula tu repositorio Git desde el panel de la plataforma. C4C7OPS detectará el lenguaje y sugerirá la configuración de build adecuada.
- 3Configura y despliegaRevisa las variables de entorno, el puerto de escucha (por defecto 8080) y confirma el despliegue. La plataforma ejecutará el build, validará el health check y habilitará la URL pública del servicio.
< 3 min
Tiempo medio de despliegue
Desde la conexión del repositorio hasta que el servicio recibe tráfico real.
0
Configuración de infraestructura manual
C4C7OPS gestiona el aprovisionamiento, el networking y la escalabilidad por ti.
Recursos relacionados
C4C7OPS by Codifly
Despliega tu primer servicio backend ahora
Prueba C4C7OPS con tu propio proyecto y comprueba lo rápido que puedes tener un backend HTTP funcionando en producción, sin tocar un solo archivo de infraestructura.