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