docker注册表nginx rest api

docker注册表nginx rest api,nginx,docker-registry,Nginx,Docker Registry,我试图在Ubuntu 14.04.1上从源代码(而不是容器)构建docker注册表服务器。我能够使用digitalocean上的说明到达那里 我能卷曲,没有问题 当我试图打开一个网络浏览器,希望看到的不仅仅是这些,这就是问题似乎发生的时候 这是我在/etc/nginx/sites available/中的docker注册表文件: # For versions of Nginx > 1.3.9 that include chunked transfer encoding support #

我试图在Ubuntu 14.04.1上从源代码(而不是容器)构建docker注册表服务器。我能够使用digitalocean上的说明到达那里

我能卷曲,没有问题

当我试图打开一个网络浏览器,希望看到的不仅仅是这些,这就是问题似乎发生的时候

这是我在/etc/nginx/sites available/中的docker注册表文件:

# For versions of Nginx > 1.3.9 that include chunked transfer encoding support
# Replace with appropriate values where necessary
upstream docker-registry {
server 192.168.x.x:5000;
}
server {
listen 8000;
server_name docker-registry;
ssl on;
ssl_certificate /etc/nginx/ssl/docker-registry.crt;
ssl_certificate_key /etc/nginx/ssl/docker-registry.key;
proxy_set_header Host       $http_host;   # required for Docker client sake
X-Real-IP  $remote_addr; # pass on real client IP
client_max_body_size 0; # disable any limits to avoid HTTP 413 for large image uploads
# required to avoid HTTP 411: see Issue #1486 (https://github.com/dotcloud/docker/issues/1486)
chunked_transfer_encoding on;
location / {
 # let Nginx know about our auth file
 auth_basic              "Restricted";
 auth_basic_user_file    docker-registry.htpasswd;
proxy_pass http://docker-registry;
 }
location /_ping {
 auth_basic off;
 proxy_pass http://docker-registry;
}
location /v1/_ping {
 auth_basic off;
 proxy_pass http://docker-registry;
 }
}
我将docker注册表本地存储在/var/docker注册表中,并确保www数据用户可以读取它。为什么我不能在web浏览器上看到我的图像

如果我标记一个图像并将其推送到我的存储库,它就可以工作,我可以在web浏览器中看到它:

https://192.168.x.x:8000/v1/repositories/ubuntu-test/tags/latest
我看到以下情况:

 "5ba9dab47459d81c0037ca3836a368a4f8ce5050505ce89720e1fb8839ea048a"
当我试图到达:

https://192.168.x.x:8000/v1
或:

或:

我得到一个“未找到”错误


我怎样才能通过web界面看到我的/var/docker注册表文件夹中的所有内容(它们存储在那里……是的,它们归www数据用户所有)

这是设计的。不仅没有理由实现整个url路径,而且实现它会带来严重的安全隐患

我假设你没有太多的网络编程经验。没有目录“/v1/repositories”。。。相反,有一个程序(在本例中是Python或Ruby)正在侦听url路径,并内置了逻辑来确定要做什么

i、 e.如果url=/v1/\u ping:返回“ok”

 https://192.168.x.x:8000/v1/repositories
 https://192.168.x.x:8000/v1/images