Agents can also run without Docker using the host-user runtime. Dockerfiles and container configuration do not apply to host-user agents.
Agent Dockerfile
Agents that need extra tools can add aDockerfile to their directory:
al-agent:latest directly.
Project Dockerfile
Projects can optionally have aDockerfile at the root that defines a shared base image for all agents. When present and customized beyond a bare FROM al-agent:latest, the build pipeline creates an intermediate image (al-project-base:latest) that all agent images layer on top of. If unmodified or absent, agents build directly on al-agent:latest.
Image Build Order
Base Image Contents
The base image (al-agent:latest) is built automatically from the Action Llama package and includes:
The base image also copies the compiled Action Llama application (
dist/) and installs its npm dependencies. The entry point is node /app/dist/agents/container-entry.js.
Build Behavior
- The base image (
al-agent:latest) is only built if it doesn’t exist yet - The project base image (
al-project-base:latest) is rebuilt on everyal startif the project Dockerfile has customizations - Agent images are named
al-<agent-name>:latest(e.g.al-dev:latest) and are rebuilt on everyal startto pick up Dockerfile changes - The build context is the Action Llama package root (not the project directory), so
COPYpaths reference the package’sdist/,package.json, etc. - The
FROMline in agent Dockerfiles is automatically rewritten to point at the correct base image
Container Filesystem Layout
Configuration
Troubleshooting
“Docker is not running” — Start Docker Desktop or the Docker daemon before runningal start.
docker build -t al-agent:latest -f docker/Dockerfile . from the Action Llama package directory to see the full build output.
Project base image build fails — Check that the project Dockerfile starts with FROM al-agent:latest and that any apk add packages are spelled correctly. The base image uses Alpine Linux.
Agent image build fails — Check that your agent’s Dockerfile starts with FROM al-agent:latest (the build pipeline rewrites this to the correct base) and that any package install commands are correct.
Image build fails — Check that your Dockerfile uses apk add (Alpine) or apt-get (Debian) depending on the base. The default base is Alpine.
Container out of memory — Increase the memory limit in config.toml:
al logs <agent> for the error. Common causes: missing credentials, missing SKILL.md, invalid model config.