As I understand it, there is a REST API in the Docker registry that is very similar to Docker itself. The documentation can be found at http://docs.docker.io/reference/api/registry_api/ . But at first glance I don’t see a method to simply list all the images.
There is also a REST API for the official index (information at http://docs.docker.io/reference/api/docker-io_api/ ).
EDIT
I just tested the Docker API, and this is not so clear. You can request all the images of a specific repository. In my case, my repository is called "thomas / busybox". I can request all the images there by calling:
https://my-private-registry.com/v1/repositories/thomas/busybox/images Result: [ { "id": "2d8e5b282c81244037eb15b2068e1c46319c1a42b80493acb128da24b2090739" }, { "id": "6c991eb934609424f761d3d0a7c79f4f72b76db286aa02e617659ac116aa7758" }, { "id": "9f4e93171ec525221fa9013d0e21f8690cef68590664eb5249e0b324c5faf31a" }, { "id": "511136ea3c5a64f264b78b5433614aec563103b4d4702f3ba7d4d2698e22c158" } ]
Now I know that I have four images in my repository, and I can request each image. Request for the first image:
https://my-private-registry.com/v1/images/2d8e5b282c81244037eb15b2068e1c46319c1a42b80493acb128da24b2090739/json Result: { "id": "2d8e5b282c81244037eb15b2068e1c46319c1a42b80493acb128da24b2090739", "parent": "9f4e93171ec525221fa9013d0e21f8690cef68590664eb5249e0b324c5faf31a", "created": "2014-04-24T15:59:59.47081913Z", "container": "d15320d6935ca35bc4198e373f29e730f4c53cce32b3809c2fecec22eb30018b", "container_config": { "Hostname": "4964db5b599b", ... "Tty": false, "OpenStdin": false, "StdinOnce": false, "Env": [ "HOME=\/", "PATH=\/usr\/local\/sbin:\/usr\/local\/bin:\/usr\/sbin:\/usr\/bin:\/sbin:\/bin" ], "Cmd": [ "\/bin\/sh", "-c", "#(nop) CMD [\/bin\/sh -c \/bin\/sh]" ], "Image": "9f4e93171ec525221fa9013d0e21f8690cef68590664eb5249e0b324c5faf31a", ... "OnBuild": [ ] }, "docker_version": "0.10.0", "author": "J\u00c3\u00a9r\u00c3\u00b4me Petazzoni <jerome@docker.com>", "config": { "Hostname": "4964db5b599b", "Domainname": "", "User": "", "Memory": 0, ... "Env": [ "HOME=\/", "PATH=\/usr\/local\/sbin:\/usr\/local\/bin:\/usr\/sbin:\/usr\/bin:\/sbin:\/bin" ], "Cmd": [ "\/bin\/sh", "-c", "\/bin\/sh" ], "Image": "9f4e93171ec525221fa9013d0e21f8690cef68590664eb5249e0b324c5faf31a", ... "OnBuild": [ ] }, "architecture": "amd64", "os": "linux", "Size": 0 }
You can also search for an image, but I am not getting any results:
https://my-private-registry.com/v1/search?q=thomas Result: {"num_results": 0, "query": "thomas", "results": []}