Docker Compose Setup¶
Customizing the Docker Compose YAML file is essential for setting up the environment to include various agents’ Docker containers, along with the configuration of all necessary variables for each container. This setup allows for seamless integration and orchestration of multiple agents and tools within the IoA platform, ensuring they can work together effectively and efficiently. The Docker Compose configuration simplifies the deployment process, providing a centralized way to manage dependencies, environment settings, and network configurations.
Docker Compose Configuration¶
Create your case-specific your_case.yml
file in the dockerfiles/compose
directory. For example: dockerfiles/compose/IOT_Party.yml
version: "3"
service:
Name: # e.g. WeizeChen
image: Specifies the Docker image to use for this service # e.g. ioa-client:latest
build:
context: ../../
dockerfile: dockerfiles/client.Dockerfile
container_name: the name of the Docker container
env_file:
- .env
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ${DOCKER_VOLUME_DIRECTORY:-.}/volumes/sqlite:/app/database
- ./volumes/openai_response_log:${OPENAI_RESPONSE_LOG_PATH}
- ../../configs/client_configs:/app/configs
environment:
- OPENAI_API_KEY
- CUSTOM_CONFIG=agent configuration file path # e.g. configs/cases/paper_writing/weizechen.yaml
ports:
- Maps host_port to container_port, allowing access to the service. # e.g. 5050:5050
depends_on:
- Server
stdin_open: true
tty: true