Docker Community Forums

Share and learn in the Docker community.

Why is pushing an image so slow?


(Andreas Jung) #1

I am working with Docker since some weeks and I have a constant bad performance pushing images to the Docker registry. Something in the range of 1 MB/second can be considered fast. My dev machine has a fast uplink and working fast with other network services. The same slowness can be seen while pulling images.
Is this a general slowness of the Docker registry?

-aj


(Andreas Jung) #2

mtr cdn-registry-1.docker.io

does not show any packet loss. The average ping time is 80-100 ms (from Frankfurt/Germany).

-aj


(Sven Dowideit) #3

Heya,

could you please give us the output of https://github.com/docker/docker-registry/blob/master/DEBUGGING.md#testing-the-speed-of-the-official-registry ?


(Andreas Jung) #4

CF delivery:


13:52:05.009605 * Couldn’t find host dseasb33srnrn.cloudfront.net in the .netrc file; using defaults
13:52:05.017664 * About to connect() to dseasb33srnrn.cloudfront.net port 443 (#0)
13:52:05.017701 * Trying 54.230.20.184… connected
13:52:05.111663 * Connected to dseasb33srnrn.cloudfront.net (54.230.20.184) port 443 (#0)
13:52:05.111706 * Initializing NSS with certpath: sql:/etc/pki/nssdb
13:52:05.165310 * CAfile: /etc/pki/tls/certs/ca-bundle.crt
CApath: none
13:52:05.361267 * SSL connection using TLS_RSA_WITH_AES_256_CBC_SHA
13:52:05.361299 * Server certificate:
13:52:05.361336 * subject: CN=*.cloudfront.net,O=Amazon.com Inc.,L=Seattle,ST=Washington,C=US
13:52:05.361364 * start date: Apr 08 00:00:00 2014 GMT
13:52:05.361378 * expire date: Apr 09 23:59:59 2015 GMT
13:52:05.361391 * common name: *.cloudfront.net
13:52:05.361403 * issuer: CN=VeriSign Class 3 Secure Server CA - G3,OU=Terms of use at https://www.verisign.com/rpa ©10,OU=VeriSign Trust Network,O=“VeriSign, Inc.”,C=US
13:52:05.361477 > GET /images/71e62a8beff35bb692f64fb2e04bf1d6d19f5262500ad05dd95b1a95dcb5599d/layer?Expires=1419925895&Signature=BjggM2rkASuOWU9imUR9plpeXR22Q3n66eFaktHtEr~7u0JdhzWF6lyxqytM7mbBpnd3~yBLEeFsDHf38LOT1KBJD3nexA8OpDyfJtE1KcoS-i5pBH0X6P6iD5CsPJML~62uS-rrWHjHaCmrz2rL-V5woUZkqmd5cAF95t-4vKM_&Key-Pair-Id=APKAJECH5M7VWIS5YZ6Q HTTP/1.1
13:52:05.361477 > User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.16.2.3 Basic ECC zlib/1.2.3 libidn/1.18 libssh2/1.4.2
13:52:05.361477 > Host: dseasb33srnrn.cloudfront.net
13:52:05.361477 > Accept: /
13:52:05.361477 >
13:52:05.572428 < HTTP/1.1 200 OK
13:52:05.572463 < Content-Type: binary/octet-stream
13:52:05.572477 < Content-Length: 188067205
13:52:05.572491 < Connection: keep-alive
13:52:05.572503 < Date: Tue, 30 Dec 2014 07:50:36 GMT
13:52:05.572516 < Last-Modified: Wed, 08 Oct 2014 22:53:38 GMT
13:52:05.572529 < ETag: "f9a95a4bff03184ccf4dc1ef1011b437-36"
13:52:05.572541 < Accept-Ranges: bytes
13:52:05.572553 < Server: AmazonS3
13:52:05.572566 < X-Cache: Miss from cloudfront
13:52:05.572578 < Via: 1.1 f8b39675eac44b97a6b28ef50d3d59db.cloudfront.net (CloudFront)
13:52:05.572591 < X-Amz-Cf-Id: 32XkrGfVqHc7wMZ12dVgyRwR-frtAtZdmsyrn_a0kPtsjVcCjggDgw==
13:52:05.572608 <
13:52:05.585319 { [data not shown]
13:52:22.701292 * Connection #0 to host dseasb33srnrn.cloudfront.net left intact
13:52:22.701366 * Closing connection #0

real 0m17.721s
user 0m2.826s
sys 0m0.534s


Resolving:


; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.el6_6.1 <<>> resolver-identity.cloudfront.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 42023
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 4, ADDITIONAL: 0

;; QUESTION SECTION:
;resolver-identity.cloudfront.net. IN A

;; ANSWER SECTION:
resolver-identity.cloudfront.net. 60 IN A 78.47.119.231

;; AUTHORITY SECTION:
cloudfront.net. 1332 IN NS ns-1306.awsdns-35.org.
cloudfront.net. 1332 IN NS ns-1597.awsdns-07.co.uk.
cloudfront.net. 1332 IN NS ns-418.awsdns-52.com.
cloudfront.net. 1332 IN NS ns-666.awsdns-19.net.

;; Query time: 7 msec
;; SERVER: 213.133.98.98#53(213.133.98.98)
;; WHEN: Tue Dec 30 08:50:51 2014
;; MSG SIZE rcvd: 203


RAW S3:


13:52:22.897257 * Couldn’t find host kamilc-us-west-1.s3.amazonaws.com in the .netrc file; using defaults
13:52:23.232567 * About to connect() to kamilc-us-west-1.s3.amazonaws.com port 80 (#0)
13:52:23.232608 * Trying 54.231.232.138… connected
13:52:23.405400 * Connected to kamilc-us-west-1.s3.amazonaws.com (54.231.232.138) port 80 (#0)
13:52:23.405440 > GET /test200m HTTP/1.1
13:52:23.405440 > User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.16.2.3 Basic ECC zlib/1.2.3 libidn/1.18 libssh2/1.4.2
13:52:23.405440 > Host: kamilc-us-west-1.s3.amazonaws.com
13:52:23.405440 > Accept: /
13:52:23.405440 >
13:52:23.666938 < HTTP/1.1 200 OK
13:52:23.666961 < x-amz-id-2: lR6OVTDGGw6jDYS/5kVTRD/Wr3k00Eb12mMU6PgTMUWHemKp1f8Jv+1i7ZhfBmC1
13:52:23.666979 < x-amz-request-id: BE2AEC4732C684AF
13:52:23.667002 < Date: Tue, 30 Dec 2014 07:50:54 GMT
13:52:23.667017 < Last-Modified: Tue, 18 Nov 2014 10:10:36 GMT
13:52:23.667031 < ETag: "eba6461a49bcb717fa50da141eb32a1a-29"
13:52:23.667043 < Accept-Ranges: bytes
13:52:23.667057 < Content-Type: binary/octet-stream
13:52:23.667070 < Content-Length: 209715200
13:52:23.667083 < Server: AmazonS3
13:52:23.667098 <
13:52:23.667111 { [data not shown]
13:52:57.920239 * Connection #0 to host kamilc-us-west-1.s3.amazonaws.com left intact
13:52:59.718938 * Closing connection #0

real 0m36.838s
user 0m0.139s
sys 0m0.632s


RAW HTTP:


13:52:59.738682 * Couldn’t find host mirrors.sonic.net in the .netrc file; using defaults
13:52:59.742094 * About to connect() to mirrors.sonic.net port 80 (#0)
13:52:59.742148 * Trying 69.12.162.27… connected
13:52:59.908273 * Connected to mirrors.sonic.net (69.12.162.27) port 80 (#0)
13:52:59.908352 > GET /centos/7/isos/x86_64/CentOS-7.0-1406-x86_64-NetInstall.iso HTTP/1.1
13:52:59.908352 > User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.16.2.3 Basic ECC zlib/1.2.3 libidn/1.18 libssh2/1.4.2
13:52:59.908352 > Host: mirrors.sonic.net
13:52:59.908352 > Accept: /
13:52:59.908352 >
13:53:00.112186 < HTTP/1.1 200 OK
13:53:00.112222 < Date: Tue, 30 Dec 2014 07:51:30 GMT
13:53:00.112235 < Server: Apache/2.2.15 (Scientific Linux)
13:53:00.112249 < Last-Modified: Fri, 04 Jul 2014 15:59:28 GMT
13:53:00.112261 < ETag: "2bf585-16a00000-4fd6035ca9800"
13:53:00.112274 < Accept-Ranges: bytes
13:53:00.112287 < Content-Length: 379584512
13:53:00.112300 < Connection: close
13:53:00.112315 < Content-Type: application/octet-stream
13:53:00.112336 <
13:53:00.112349 { [data not shown]
13:53:31.889920 * Closing connection #0

real 0m43.716s
user 0m0.242s
sys 0m1.172s