Workers - Develop locally with Containers and the Cloudflare Vite plugin
11mo ago
Source
CloudflareWorkers - Develop locally with Containers and the Cloudflare Vite plugincloudflare.comYou can now configure and run Containers alongside your Worker during local development when using the Cloudflare Vite plugin . Previously, you could only develop locally when using Wrangler as your local development server. Configuration You can simply configure your Worker and your Container(s) in your Wrangler configuration file: wrangler.jsonc { " name " : "container-starter" , " main " : "src/index.js" , " containers " : [ { " class_name " : "MyContainer" , " image " : "./Dockerfile" , " instances " : 5 } ], " durable_objects " : { " bindings " : [ { " class_name " : "MyContainer" , " name " : "MY_CONTAINER" } ] }, " migrations " : [ { " new_sqlite_classes " : [ "MyContainer" ], " tag " : "v1" } ], } wrangler.toml name = "container-starter" main = "src/index.js" [[ containers ]] class_name = "MyContainer" image = "./Dockerfile" instances = 5 [[ durable_objects . bindings ]] class_name = "MyContainer" name = "MY_CONTAINER" [[ migrations ]] new_sqlite_classes = [ "MyContainer" ] tag = "v1" Worker Code Once your Worker and Containers are configured, you can access the Container instances from your Worker code: import { Container , getContainer } from "@cloudflare/containers" ; export class MyContainer extends Container { defaultPort = 4000 ; // Port the container is listening on sleepAfter = "10m" ; // Stop the instance if requests not sent for 10 minutes } async fetch ( request , env ) { const { "session-id" : sessionId } = await request . json () ; // Get the container instance for the given session ID const containerInstance = getContainer ( env . MY_CONTAINER , sessionId ) // Pass the request to the container instance on its default port return containerInstance . fetch ( request ) ; } Local development To develop your Worker locally, start a local dev server by running vite dev in your terminal. Resources Learn more about Cloudflare Containers or the Cloudflare Vite plugin in our developer docs.
You might also wanna read
Cloudflare expands AI bot management tools with granular traffic controls for all customers
Cloudflare is celebrating the second "Content Independence Day" by expanding AI traffic management options for all website owners. Building
Workers - Simpler runtime types with @cloudflare/workers-types v5
Cloudflare·1d ago
AI Search - Manage AI Search sync jobs with Wrangler CLI
Cloudflare·2d ago
Workers - Work across multiple accounts with Wrangler auth profiles
Cloudflare·2d ago
Cache - Cache multiple versions of a URL with Vary
Cloudflare·2d ago
Cloudflare One - Hostname routing for Cloudflare Mesh
Cloudflare·2d ago

Comments
Sign in to join the conversation.
No comments yet. Be the first.