[help]How to change or specify the Docker Hub repository address for agno workspace?

Hi, I encounter a error when use the agno workspace(my first time), The Docker Hub repository is inaccessible due to certain reasons.
when run ag ws up:

-==+==- Container: agent-app-db
Starting container: agent-app-db
ERROR APIError: Get “https://registry-1.docker.io/v2/”: context deadline exceeded
ERROR Failed to create Container: agent-app-db
ERROR 500 Server Error for http+docker://localhost/v1.48/images/create?tag=16&fromImage=agnohq%2Fpgvector: Internal Server Error (“Get
https://registry-1.docker.io/v2/”: context deadline exceeded”)
ERROR Please fix and try again…


So, How to specify an accessile docker hub repository address for agno workspace ?
Thanks

Hey @dddsf3562
thanks for reaching out and supporting Agno. I’ve shared this with the team, we’re working through all requests one by one and will get back to you soon.
If it’s urgent, please let us know. We appreciate your patience!

Hey @dddsf3562. As you can see we are using registry-1.docker.io, which is Docker Hub’s official registry. I understand that what you are saying is that you can’t access this in your current setup / based on network restrictions on your side. Correct?

Currently we don’t have any built-in option to specify alternative Docker registries. I see how it could be useful - I’ll pass it along as a feature request.

As a workaround, if you know which registry you want to use, you could configure your Docker daemon to use a Docker Hub mirror or proxy:

  1. Create/edit /etc/docker/daemon.json (Linux/Mac) or %programdata%\docker\config\daemon.json (Windows):
{
  "registry-mirrors": [
    "https://your-mirror-registry.com",
    ...
  ]
}

Thanks for you answer !
Yes, I configured the repository adress, But I couldn’t pull the ‘agnohq/python:3.12’ (but other images can be pulled down), Does this image only on the official hub ? Perhaps this image has not been synchronized to the mirror repository ?
Not sure anymore.

{ "registry-mirrors": [ "https://mirror.ccs.tencentyun.com", "https://docker.m.daocloud.io" ] }

Looks like the image is indeed not there in your Tencent mirror. (I can’t test with the DaoCloud one, as it needs auth, but I assume the image is not there either). I checked with:

curl -s "https://mirror.ccs.tencentyun.com/v2/agnohq/python/tags/list"
curl -s "https://docker.m.daocloud.io/v2/agnohq/python/tags/list"

Any change for you to pull this one image from the official registry?

Going forward we should provide access to these critical images from more registries - we will look into that! Thanks for reporting.

Thanks for your patience, I found a thrid registry and pull all images successfully,
But when I open http://IP:8501/, an error occurs.

ImportError: cannot import name 'ToolExecution' from 'agno.models.response' (/usr/local/lib/python3.12/site-packages/agno/models/response.py)
Traceback:
File "/app/ui/pages/2_Scholar.py", line 12, in <module>
    from ui.utils import (
File "/app/ui/utils.py", line 12, in <module>
    from agno.models.response import ToolExecution

I saw the images are running normally.

CONTAINER ID   IMAGE                  COMMAND                  CREATED       STATUS       PORTS                                         NAMES
989ca2eb980a   agnohq/agent-app:dev   "/app/scripts/entryp…"   5 hours ago   Up 5 hours   0.0.0.0:8000->8000/tcp, [::]:8000->8000/tcp   agent-app-api
adeece00053e   agnohq/agent-app:dev   "/app/scripts/entryp…"   5 hours ago   Up 5 hours   0.0.0.0:8501->8501/tcp, [::]:8501->8501/tcp   agent-app-ui
677618fe7aff   agnohq/pgvector:16     "docker-entrypoint.s…"   5 hours ago   Up 5 hours   0.0.0.0:5432->5432/tcp, [::]:5432->5432/tcp   agent-app-db

Could it be that I missed installing some package?

BTW: The fastapi doc address http://IP:8000/docs can not be acessable .

Hey @dddsf3562, I’m happy to see we found a registry to make this work! Can I ask which one it was?

importError: cannot import name ‘ToolExecution’ from ‘agno.models.response’

The agno dependency in the container where this is happening seems to be outdated. I will make sure we adjust the code to make the right version available by default. Right now you can probably solve it directly by upgrading the agno dependency in that container: pip install --upgrade agno

Thanks for using Agno!