Toolkits
Docker
DockerTools enable an Agent to interact with Docker containers, images, volumes, and networks.
Prerequisites
The Docker tools require the docker
Python package. Youāll also need Docker installed and running on your system.
Example
The following example creates an agent that can manage Docker resources:
cookbook/tools/docker_tools.py
Toolkit Params
Parameter | Type | Default | Description |
---|---|---|---|
enable_container_management | bool | True | Enables container management functions (list, start, stop, etc.) |
enable_image_management | bool | True | Enables image management functions (pull, build, etc.) |
enable_volume_management | bool | False | Enables volume management functions |
enable_network_management | bool | False | Enables network management functions |
Toolkit Functions
Container Management
Function | Description |
---|---|
list_containers | Lists all containers or only running containers |
start_container | Starts a stopped container |
stop_container | Stops a running container |
remove_container | Removes a container |
get_container_logs | Retrieves logs from a container |
inspect_container | Gets detailed information about a container |
run_container | Creates and starts a new container |
exec_in_container | Executes a command inside a running container |
Image Management
Function | Description |
---|---|
list_images | Lists all images on the system |
pull_image | Pulls an image from a registry |
remove_image | Removes an image |
build_image | Builds an image from a Dockerfile |
tag_image | Tags an image |
inspect_image | Gets detailed information about an image |
Volume Management
Function | Description |
---|---|
list_volumes | Lists all volumes |
create_volume | Creates a new volume |
remove_volume | Removes a volume |
inspect_volume | Gets detailed information about a volume |
Network Management
Function | Description |
---|---|
list_networks | Lists all networks |
create_network | Creates a new network |
remove_network | Removes a network |
inspect_network | Gets detailed information about a network |
connect_container_to_network | Connects a container to a network |
disconnect_container_from_network | Disconnects a container from a network |