# Codifly Documentation and Public Content - Full Content This file provides comprehensive rendered content from published Codifly CMS pages, docs, blog posts, and bundled Codifly docs. Exclude drafts, noindex content, admin data, API data, users, form submissions, analytics, audit logs, and secrets. ## Root URL https://codifly.co ## Available Languages - English (en) - Spanish (es) -------------------------------------------------------------------------------- title: "How to Deploy an HTTP Backend Service on C4C7OPS" description: "Learn how to quickly deploy an HTTP backend project written in Go on the C4C7OPS platform with this step-by-step practical guide." locale: "en" type: "blog" section: "c4c7us" last_updated: "2023-07-10T16:23:41.000Z" source: "https://codifly.co/en/blog/getting-started-with-c4c7us-deploy-an-http-backend-service-677f287f4ec2" -------------------------------------------------------------------------------- # How to Deploy an HTTP Backend Service on C4C7OPS Learn how to quickly deploy an HTTP backend project written in Go on the C4C7OPS platform with this step-by-step practical guide. 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 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 repositorio [https://github.com/c4c7us-cloud/backend-demo](https://github.com/c4c7us-cloud/backend-demo)) Requisitos Como requisitos de nuestro proyecto este debe contar con al menos un endpoint que nos sirva de health check indicándonos que la aplicación se levanto correctamente, este nos debe responder con un status code 200, para el ejemplo particular el endpoint de health check se encontrara en /api/demo/health-check ; Cuando lo consultamos de forma local nos responde lo siguiente: Adicional tendremos otro endpoint (/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, seleccionamos create y 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 son workers, schedule tasks o lambdas. - 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. - El prefix path bajo el cual van a estar los endpoint de nuestra aplicación. - La ruta del health check (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 de settings del 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 de settings, 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. - Minimum and maximum of 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 del endpoint que se configura como health check. - 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 llamada environment variables. 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 de deploys en el menú, y al seleccionar create, ingresamos el nombre de la etiqueta (tag), rama o commit que queremos desplegar del código fuente. En el caso de nuestro ejemplo, utilizaremos la rama main/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ón create se 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 el deploy, 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ón minimum 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 Finally, with our service deployed, we can access the endpoints it exposes over the internet by pointing to the domain associated with the environment where the service was deployed, and respecting the prefix path configured at creation time. As an example, the following shows the results of querying the endpoints we had locally once the deployment was completed. Summary In summary, throughout this post we managed to deploy an HTTP backend service that was initially running locally. Through our C4C7OPS platform, we managed to expose this service to the internet. The key steps we followed were: - Creation and configuration of the new microservice: We defined the microservice type, the programming language used, and the repository where it is hosted. - Instance variable configuration: We set the variables that describe the behavior of the instances where the service will run. This includes aspects such as the minimum number of instances required. - Service deployment in a specific environment: We launched the service deployment in the desired environment. This resulted in our service being exposed and accessible to the public we want to reach. In summary, we successfully migrated our local backend service to an online environment, allowing it to be publicly available using our C4C7OPS platform. Focus keyword: Deploy HTTP Backend Service C4C7OPS Search intent: informational ## FAQ ### What is C4C7OPS? C4C7OPS is a platform designed to help developers quickly and easily deploy and manage HTTP backend projects. ### Can I deploy a Go application on C4C7OPS? Yes, you can deploy backend projects written in various languages, including Go, which is used as the primary example in this deployment guide. -------------------------------------------------------------------------------- title: "Getting Started" description: "Base guide to create documentation from Payload CMS and organize it by sections." locale: "en" type: "docs" section: "Getting started" source: "https://codifly.co/en/docs/getting-started" -------------------------------------------------------------------------------- # Getting Started Base guide to create documentation from Payload CMS and organize it by sections. Create a page in Docs Pages, define section and order to position it in the index. You can attach files from the Attachments field to make them available as public downloads. -------------------------------------------------------------------------------- title: "Backend services" description: "Deploy APIs, workers, and microservices with health checks and rollback." locale: "en" type: "docs" section: "Deploy" source: "https://codifly.co/en/docs/backend-services" -------------------------------------------------------------------------------- # Backend services Deploy APIs, workers, and microservices with health checks and rollback. Backend services cover APIs, workers, jobs, and internal processes. Each service should have a build command, runtime, health check, variables, and deployment policy. - Configure runtime and build command. - Define health check and port. - Connect repository and branch. - Enable rollback for critical releases. Internal backlinks: see Git, deploys, and observability. -------------------------------------------------------------------------------- title: "Cloud connections" description: "Connect cloud providers with auditable roles, policies, and permissions." locale: "en" type: "docs" section: "Core" source: "https://codifly.co/en/docs/cloud-connections" -------------------------------------------------------------------------------- # Cloud connections Connect cloud providers with auditable roles, policies, and permissions. Cloud connections let Codifly create and manage resources with control. The goal is to avoid manual credentials, centralize permissions, and preserve traceability for every operational change. - Use dedicated roles per account or project. - Limit permissions per environment. - Review connection status before deploying. - Document who authorized each provider. Internal backlinks: see cloud governance, resources, and cloud costs. -------------------------------------------------------------------------------- title: "Cloud costs" description: "Understand consumption, trends, and cloud optimization opportunities." locale: "en" type: "docs" section: "Operate" source: "https://codifly.co/en/docs/cloud-costs" -------------------------------------------------------------------------------- # Cloud costs Understand consumption, trends, and cloud optimization opportunities. The cost module helps identify oversized resources, anomalous consumption, and FinOps opportunities. Use it weekly to maintain operational control. - Review trends by environment. - Detect idle resources. - Compare cost against usage. - Prioritize optimizations with real impact. Internal backlinks: see resources, cloud governance, and observability. -------------------------------------------------------------------------------- title: "Connect Git" description: "Generate a Git key and link repositories for automated deploys." locale: "en" type: "docs" section: "Start" source: "https://codifly.co/en/docs/connect-git" -------------------------------------------------------------------------------- # Connect Git Generate a Git key and link repositories for automated deploys. The Git module creates the secure bridge between Codifly and your repositories. Use it to sync code, detect changes, and trigger deploy pipelines by branch or environment. - Generate the key in the console. - Add it to the authorized Git provider. - Select allowed repositories and branches. - Define which services can deploy from each repository. Internal backlinks: see deploys, backend services, and cloud governance. -------------------------------------------------------------------------------- title: "Domains and DNS" description: "Manage domains, records, certificates, and routing from one place." locale: "en" type: "docs" section: "Configure" source: "https://codifly.co/en/docs/domains-and-dns" -------------------------------------------------------------------------------- # Domains and DNS Manage domains, records, certificates, and routing from one place. Codifly centralizes DNS records, certificates, and routes so every service has clear configuration. Before publishing production, validate TTL, active certificates, and traffic origin. - Create or import domains. - Configure TXT, CNAME, or A records as needed. - Enable automatic HTTPS. - Validate routes per environment. Internal backlinks: see global frontends, CloudFront, and deploys. -------------------------------------------------------------------------------- title: "Environment variables and secrets" description: "Manage sensitive configuration by service and environment." locale: "en" type: "docs" section: "Configure" source: "https://codifly.co/en/docs/variables-and-secrets" -------------------------------------------------------------------------------- # Environment variables and secrets Manage sensitive configuration by service and environment. Variables and secrets separate configuration from code. They should be defined per environment, reviewed before each deploy, and audited whenever they change. - Use consistent and descriptive names. - Avoid sharing secrets across environments. - Deploy variable changes with review. - Rotate critical secrets periodically. Internal backlinks: see environments, backend services, and security. -------------------------------------------------------------------------------- title: "Environments" description: "Separate development, staging, and production with their own variables, resources, and domains." locale: "en" type: "docs" section: "Core" source: "https://codifly.co/en/docs/environments" -------------------------------------------------------------------------------- # Environments Separate development, staging, and production with their own variables, resources, and domains. Environments isolate configuration, secrets, resources, and deploys. Use them to test changes without affecting production and to keep a clear promotion path. - Create environments per service or product. - Define environment-specific variables and secrets. - Attach domains and resources per environment. - Promote changes with review and rollback. Internal backlinks: see environment variables, deploys, and monitoring. -------------------------------------------------------------------------------- title: "Monitoring and observability" description: "Review logs, metrics, events, and health signals for services and resources." locale: "en" type: "docs" section: "Operate" source: "https://codifly.co/en/docs/monitoring-and-observability" -------------------------------------------------------------------------------- # Monitoring and observability Review logs, metrics, events, and health signals for services and resources. Observability helps detect failures before they affect users. Combine logs, metrics, deploy states, and alerts per environment. - Review health checks after each release. - Watch latency, errors, and resource usage. - Connect observability providers. - Document incidents and actions. Internal backlinks: see deploys, resources, and support. -------------------------------------------------------------------------------- title: "Resources" description: "Create and connect PostgreSQL, Redis, S3, DocumentDB, and shared resources." locale: "en" type: "docs" section: "Datastores" source: "https://codifly.co/en/docs/resources" -------------------------------------------------------------------------------- # Resources Create and connect PostgreSQL, Redis, S3, DocumentDB, and shared resources. Resources represent databases, caches, buckets, and shared services. They should be attached to the right environment and exposed to services through secure connections. - Create resources per environment. - Review storage and limits. - Enable backups when applicable. - Connect services with managed credentials. Internal backlinks: see cloud connections, cloud costs, and security. -------------------------------------------------------------------------------- title: "Security and governance" description: "Control roles, permissions, audit trails, and cloud operation policies." locale: "en" type: "docs" section: "Security" source: "https://codifly.co/en/docs/security-and-governance" -------------------------------------------------------------------------------- # Security and governance Control roles, permissions, audit trails, and cloud operation policies. Cloud governance defines who can do what, on which resource, and in which environment. Codifly should operate with least-privilege roles, auditability, and separation of responsibilities. - Configure roles by team. - Review policies before production. - Preserve traceability for critical changes. - Use audit logs to investigate incidents. Internal backlinks: see cloud connections, variables, and cloud costs. -------------------------------------------------------------------------------- title: "Support and tickets" description: "Manage tickets, approvals, and technical support conversations." locale: "en" type: "docs" section: "Support" source: "https://codifly.co/en/docs/support-and-tickets" -------------------------------------------------------------------------------- # Support and tickets Manage tickets, approvals, and technical support conversations. Support centralizes requests, approvals, and conversations related to cloud operations. Use it for incidents, sensitive changes, and technical reviews. - Create tickets with technical context. - Attach service, environment, and relevant logs. - Use approvals for critical changes. - Track ownership until closure. Internal backlinks: see monitoring, deploys, and governance. -------------------------------------------------------------------------------- title: "Primeros pasos" description: "Guia base para crear documentacion desde Payload CMS y ordenarla por secciones." locale: "es" type: "docs" section: "Getting started" source: "https://codifly.co/es/docs/primeros-pasos" -------------------------------------------------------------------------------- # Primeros pasos Guia base para crear documentacion desde Payload CMS y ordenarla por secciones. Crea una pagina en Docs Pages, define section y order para ubicarla en el indice. Puedes adjuntar archivos desde el campo Attachments para que queden disponibles como descargas publicas. -------------------------------------------------------------------------------- title: "Conectar Git" description: "Genera una llave Git y enlaza tus repositorios para habilitar despliegues automáticos." locale: "es" type: "docs" section: "Start" source: "https://codifly.co/es/docs/conectar-git" -------------------------------------------------------------------------------- # Conectar Git Genera una llave Git y enlaza tus repositorios para habilitar despliegues automáticos. El módulo Git crea el puente seguro entre Codifly y tus repositorios. Úsalo para sincronizar código, detectar cambios y activar pipelines de despliegue por branch o por entorno. - Genera la llave desde la consola. - Agrégala al proveedor Git autorizado. - Selecciona repositorios y ramas permitidas. - Define qué servicios pueden desplegar desde cada repositorio. Backlinks internos: consulta despliegues, servicios backend y gobierno cloud. -------------------------------------------------------------------------------- title: "Conexiones cloud" description: "Conecta proveedores cloud con roles, políticas y permisos auditables." locale: "es" type: "docs" section: "Core" source: "https://codifly.co/es/docs/conexiones-cloud" -------------------------------------------------------------------------------- # Conexiones cloud Conecta proveedores cloud con roles, políticas y permisos auditables. Las conexiones cloud permiten que Codifly cree y administre recursos con control. El objetivo es evitar credenciales manuales, centralizar permisos y mantener trazabilidad sobre cada cambio operativo. - Usa roles dedicados por cuenta o proyecto. - Limita permisos por entorno. - Revisa el estado de la conexión antes de desplegar. - Documenta quién autorizó cada proveedor. Backlinks internos: revisa gobierno cloud, recursos y costos cloud. -------------------------------------------------------------------------------- title: "Costos cloud" description: "Entiende consumo, tendencias y oportunidades de optimización cloud." locale: "es" type: "docs" section: "Operate" source: "https://codifly.co/es/docs/costos-cloud" -------------------------------------------------------------------------------- # Costos cloud Entiende consumo, tendencias y oportunidades de optimización cloud. El módulo de costos ayuda a identificar recursos sobredimensionados, consumo anómalo y oportunidades FinOps. Úsalo como rutina semanal para mantener control operativo. - Revisa tendencias por entorno. - Detecta recursos inactivos. - Compara costo contra uso. - Prioriza optimizaciones con impacto real. Backlinks internos: revisa recursos, gobierno cloud y observabilidad. -------------------------------------------------------------------------------- title: "Dominios y DNS" description: "Administra dominios, registros, certificados y routing desde una sola vista." locale: "es" type: "docs" section: "Configure" source: "https://codifly.co/es/docs/dominios-y-dns" -------------------------------------------------------------------------------- # Dominios y DNS Administra dominios, registros, certificados y routing desde una sola vista. Codifly centraliza registros DNS, certificados y rutas para que cada servicio tenga una configuración clara. Antes de publicar producción, valida TTL, certificados activos y origen del tráfico. - Crea o importa dominios. - Configura registros TXT, CNAME o A según el caso. - Activa HTTPS automático. - Valida rutas por entorno. Backlinks internos: revisa frontends globales, CloudFront y despliegues. -------------------------------------------------------------------------------- title: "Entornos" description: "Separa desarrollo, staging y producción con variables, recursos y dominios propios." locale: "es" type: "docs" section: "Core" source: "https://codifly.co/es/docs/entornos" -------------------------------------------------------------------------------- # Entornos Separa desarrollo, staging y producción con variables, recursos y dominios propios. Los entornos aíslan configuración, secretos, recursos y despliegues. Úsalos para probar cambios sin afectar producción y para mantener una ruta de promoción clara. - Crea entornos por servicio o por producto. - Define variables y secretos específicos. - Asocia dominios y recursos por entorno. - Promueve cambios con revisiones y rollback. Backlinks internos: consulta variables de entorno, despliegues y monitoreo. -------------------------------------------------------------------------------- title: "Monitoreo y observabilidad" description: "Revisa logs, métricas, eventos y señales de salud de servicios y recursos." locale: "es" type: "docs" section: "Operate" source: "https://codifly.co/es/docs/monitoreo-y-observabilidad" -------------------------------------------------------------------------------- # Monitoreo y observabilidad Revisa logs, métricas, eventos y señales de salud de servicios y recursos. La observabilidad permite detectar fallos antes de que afecten usuarios. Combina logs, métricas, estados de despliegue y alertas por entorno. - Revisa health checks tras cada release. - Observa latencia, errores y uso de recursos. - Conecta proveedores de observabilidad. - Documenta incidentes y acciones. Backlinks internos: consulta despliegues, recursos y soporte. -------------------------------------------------------------------------------- title: "Recursos" description: "Crea y conecta PostgreSQL, Redis, S3, DocumentDB y recursos compartidos." locale: "es" type: "docs" section: "Datastores" source: "https://codifly.co/es/docs/recursos" -------------------------------------------------------------------------------- # Recursos Crea y conecta PostgreSQL, Redis, S3, DocumentDB y recursos compartidos. Los recursos representan bases de datos, caches, buckets y servicios compartidos. Deben asociarse al entorno correcto y exponerse a servicios mediante conexiones seguras. - Crea recursos por entorno. - Revisa almacenamiento y límites. - Activa backups cuando aplique. - Conecta servicios con credenciales administradas. Backlinks internos: revisa conexiones cloud, costos cloud y seguridad. -------------------------------------------------------------------------------- title: "Seguridad y gobierno" description: "Controla roles, permisos, auditoría y políticas de operación cloud." locale: "es" type: "docs" section: "Security" source: "https://codifly.co/es/docs/seguridad-y-gobierno" -------------------------------------------------------------------------------- # Seguridad y gobierno Controla roles, permisos, auditoría y políticas de operación cloud. El gobierno cloud define quién puede hacer qué, sobre qué recurso y en qué entorno. Codifly debe operar con roles mínimos, auditoría y separación de responsabilidades. - Configura roles por equipo. - Revisa políticas antes de producción. - Mantén trazabilidad de cambios críticos. - Usa auditoría para investigar incidentes. Backlinks internos: consulta conexiones cloud, variables y costos cloud. -------------------------------------------------------------------------------- title: "Servicios backend" description: "Despliega APIs, workers y microservicios con health checks y rollback." locale: "es" type: "docs" section: "Deploy" source: "https://codifly.co/es/docs/servicios-backend" -------------------------------------------------------------------------------- # Servicios backend Despliega APIs, workers y microservicios con health checks y rollback. Los servicios backend cubren APIs, workers, jobs y procesos internos. Cada servicio debe tener build command, runtime, health check, variables y política de despliegue. - Configura runtime y comando de build. - Define health check y puerto. - Conecta repositorio y rama. - Activa rollback para releases críticos. Backlinks internos: revisa Git, despliegues y observabilidad. -------------------------------------------------------------------------------- title: "Soporte y tickets" description: "Gestiona tickets, aprobaciones y conversaciones de soporte técnico." locale: "es" type: "docs" section: "Support" source: "https://codifly.co/es/docs/soporte-y-tickets" -------------------------------------------------------------------------------- # Soporte y tickets Gestiona tickets, aprobaciones y conversaciones de soporte técnico. El soporte centraliza solicitudes, aprobaciones y conversaciones relacionadas con operación cloud. Úsalo para incidentes, cambios sensibles y revisiones técnicas. - Crea tickets con contexto técnico. - Adjunta servicio, entorno y logs relevantes. - Usa aprobaciones para cambios críticos. - Mantén seguimiento hasta el cierre. Backlinks internos: revisa monitoreo, despliegues y gobierno. -------------------------------------------------------------------------------- title: "Variables de entorno y secretos" description: "Gestiona configuración sensible por servicio y entorno." locale: "es" type: "docs" section: "Configure" source: "https://codifly.co/es/docs/variables-y-secretos" -------------------------------------------------------------------------------- # Variables de entorno y secretos Gestiona configuración sensible por servicio y entorno. Las variables y secretos separan configuración del código. Deben definirse por entorno, revisarse antes de cada despliegue y auditarse cuando cambian. - Usa nombres consistentes y descriptivos. - Evita secretos compartidos entre entornos. - Despliega cambios de variables con revisión. - Rota secretos críticos periódicamente. Backlinks internos: consulta entornos, servicios backend y seguridad.