¿Cómo implementar contenedores Docker en Cloudflare en 2025?

En serverless, entre menos tenga que preocuparte por infraestructura mas eficiente eres y esto te permite avanzar más rapido en tus proyectos empresariales.


Para hacer la implementación se debe instalar la configuración

Debes asegurarte de tener una cuenta de Cloudflare de pago

Una ves te asegures, debes ejecutar el comando de instalación

💡

Actualmente WSL no tiene compatiblidad nativa con windows, asi que se debe usar WSL para poder hacer uso del mismo.

Implementar la plantilla predeterminada

npm create cloudflare@latest -- --template=cloudflare/templates/containers-template

Cambiar el código del directorio /src/index.ts

Reemplaza el código de index.ts por el siguiente código:

import { Container, getContainer, getRandom } from "@cloudflare/containers";

export class MyContainer extends Container<Env> {
  defaultPort = 8080;
  sleepAfter = "2m";
  envVars = {
    MESSAGE: "I was passed in via the container class!",
  };

  override onStart() {
    console.log("Container successfully started");
  }

  override onStop() {
    console.log("Container successfully shut down");
  }

  override onError(error: unknown) {
    console.log("Container error:", error);
  }
}

// Create Hono app with proper typing for Cloudflare Workers
export default {
  async fetch(request: Request, env: any): Promise<Response> {
    let container = getContainer(env.MY_CONTAINER);
    return await container.fetch(request);
  }
} satisfies ExportedHandler<Env>;

Asegúrate de tener bien configurado tu Dockerfile

Aquí te dejo uno de ejemplo con Flask

from flask import Flask

app = Flask(__name__)

@app.route("/")
def index():
        return "Hola mundo"

if __name__ == "__main__":
        app.run(host="0.0.0.0", port=8080)

Con estas simples modificaciones deberías poder trabajar

Esto es relativamente sencillo pero permite crear aplicaciones fullstack sobre la infraestructura de cloudflare

Si necesitas alguna ayuda puedes ponerte en contacto conmigo.