Sign inSign up

pegi3s/dockeragent

By pegi3s

•Updated 14 days ago

Image
0

73

pegi3s/dockeragent repository overview

⁠This image belongs to a larger project called Bioinformatics Docker Images Project (http://pegi3s.github.io/dockerfiles⁠)

⁠(Please note that the original software licenses still apply)

This image facilitates the usage of dockeragent⁠, an AI agent that turns a GitHub repository URL into a working, tested (if suitable data is available) pegi3s-style Bioinformatics Docker image, and that also generates the needed metadata (Dockerfile, README, metadata.json, License, etc.), ready for submission to pegi3s BDIP⁠. This Docker image has been used to generate the needed files for software applications with no special instalation requirements, for Jupyter Notebook applications (in this case the code is converted to Python scripts, for NextFlow applications where Docker is a wrapper that facilitates the running of the application, and R applications where a Rscript is generated to avoid having to enter the image and to declare each command separately.

⁠If you use this agent to generate a Docker image for a software not available at pegi3s BDIP, please consider, after testing it, to contribute the Dockerfile and associated metadata (including the test data) to the pegi3s BDIP project, by sending an e-mail message to [email protected]⁠ with the for_submission/ folder as an attachment. If you generate Docker images for a different purpose, using this Docker image, you must declare that you have used dockeragent to generate them.

⁠Requirements

Before running the image you need two files on the host:

  1. An API key file at /opt/.apikey — a plain text file containing only your AI provider's API key.
  2. A config.json file in the directory you mount as /data — describes which AI provider/model dockeragent should use.
⁠/opt/.apikey

Create the file /opt/.apikey on the host containing a single line with your API key, e.g.:

sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

No quotes, no trailing whitespace, no other content. This directory is mounted read-only-in-spirit into the container with -v /opt:/opt, so dockeragent can read it at /opt/.apikey.

⁠config.json

Place a config.json file in the directory you will mount as /data (e.g. your working directory). Example, using DeepSeek as the provider:

{
  "provider_id":   "deepseek",
  "provider_name": "DeepSeek",
  "npm":           "@ai-sdk/openai-compatible",
  "base_url":      "https://api.deepseek.com/v1",
  "model_id":      "deepseek-flash",
  "model_name":    "DeepSeek V4.1 Flash"
}

All six keys are required: provider_id, provider_name, npm, base_url, model_id, model_name.

Examples for other providers:

Providernpmbase_url
OpenAI@ai-sdk/openaihttps://api.openai.com/v1
Anthropic@ai-sdk/anthropichttps://api.anthropic.com
Gemini@ai-sdk/googlehttps://generativelanguage.googleapis.com/v1beta

⁠Using the dockeragent image in Linux

You should adapt and run the following command:

docker run -v /var/run/docker.sock:/var/run/docker.sock -v /your/data/dir:/data -v /opt:/opt pegi3s/dockeragent run "https://github.com/<user>/<repo>"

In this command, you should replace:

  • /your/data/dir to point to the directory containing your config.json (this is also where the results will be written).
  • https://github.com/<user>/<repo> to the GitHub URL of the tool you want to dockerize.

Example:

docker run -v /var/run/docker.sock:/var/run/docker.sock -v $(pwd):/data -v /opt:/opt pegi3s/dockeragent run "https://github.com/unipept/FragGeneScanRs"

Notes on the mounts:

  • /var/run/docker.sock gives dockeragent access to the host's Docker daemon, which it needs to build and test the generated image.
  • /opt:/opt gives dockeragent access to the API key at /opt/.apikey.
  • /your/data/dir:/data gives dockeragent access to config.json and is where it writes its output.

To run in debug mode (prints the full commands, outputs and reasoning for every step), append -d after the GitHub URL:

docker run -v /var/run/docker.sock:/var/run/docker.sock -v $(pwd):/data -v /opt:/opt pegi3s/dockeragent run "https://github.com/putonti/virMine -d"

⁠Output

Results are written to /your/data/dir/dockeragent_results/<program_name>/, including the generated Dockerfile, README.md, metadata.json, ontology.diaf, License and a for_submission/ folder laid out exactly as needed for submission to pegi3s BDIP.

Tag summary

Content type

Image

Digest

sha256:dd9a5f8c1…

Size

246.9 MB

Last updated

14 days ago

docker pull pegi3s/dockeragent