Skip to main content
You can use a shared context from a single repository to deploy multiple resources, mixing batch jobs, agents, MCP servers, etc.

Deploying multiple resources

With the --directory (-d) parameter in bl deploy and bl push, you can specify a subfolder containing your blaxel.toml and Dockerfile. The Dockerfile defines how your deployment context is built and as such is required if you want to ensure proper mounting of shared dependencies between your different services. This enables such mono-repo structure with shared libraries:
No changes are required to your blaxel.toml. However, in your Dockerfile, paths must be relative to the root context. For example, replace COPY src src with COPY myagent/src src This allows you to reference shared resources:

Deploy

To deploy, run these commands from the root folder:
To push without deploying, run these commands from the root folder:
For a complete example, see our sample repository.
Last modified on June 17, 2026