docker仓库配置nginx代理


1.问题背景
nginx服务器192.168.1.249能上网,可以拉镜像docker.registry.com:5000/message-send:v201808270153-master,192.168.1.184无法上互联网,也想拉该镜像,为了实现该目标,需要做如下操作(116.62.97.139为docker.registry.com对应的互联网IP)。

2.修改nginx服务器(192.168.1.249)的/app/nginx/conf/nginx.conf文件,内容如下
user root root;
worker_processes 2;
events {
worker_connections 65535;
}

http {
include mime.types;
default_type application/octet-stream;

server_names_hash_bucket_size 128;
client_header_buffer_size 32k;
large_client_header_buffers 4 32k;
client_max_body_size 20480m;

sendfile on;
tcp_nopush on;
keepalive_timeout 150;
tcp_nodelay on;
server_tokens off;


access_log /dev/null;
error_log /dev/null;

upstream registry {
server 116.62.97.139:5000;
}

server 
{
listen 5000;
server_name docker.registry.com;
ssl on;
ssl_certificate /app/nginx/conf/server.crt; 
ssl_certificate_key /app/nginx/conf/server.key;
ssl_session_timeout 5m;
ssl_protocols SSLv2 SSLv3 TLSv1;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP; 
ssl_prefer_server_ciphers on;
index index.html index.htm; 

location /v2/ {
proxy_pass https://registry;
proxy_set_header Host $http_host; # required for docker client's sake
proxy_set_header X-Real-IP $remote_addr; # pass on real client's IP
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}

}

2.修改nginx服务器的/etc/hosts,添加如下一行,其中192.168.1.249为nginx服务器的IP
192.168.1.249 docker.registry.com

3.在与nginx服务器同一个网段上的服务器(比如192.168.1.184)运行如下命令获取镜像,如果能拉取说明配置成功
docker pull docker.registry.com:5000/message-send:v201808270153-master

4.查看有哪些镜像

https://docker.registry.com:5000/v2/_catalog

哪些tag

https://docker.registry.com:5000/v2/镜像名称/tags/list


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM