Commit graph

731 commits

Author SHA1 Message Date
Stephen J Day
7420a3de10 Instantiate http context before dispatch
Ensure that the status is logged in the context by instantiating before the
request is routed to handlers. While this requires some level of hacking to
acheive, the result is that the context value of "http.request.status" is as
accurate as possible for each request.

Signed-off-by: Stephen J Day <stephen.day@docker.com>
2015-04-15 19:53:36 -07:00
Stephen J Day
cc8285f74c Provide access to response writer in Context
Signed-off-by: Stephen J Day <stephen.day@docker.com>
2015-04-15 19:18:40 -07:00
Stephen Day
e16c23bb43 Merge pull request #368 from dmcgowan/upload-api-docs-update
Update final upload chunk api doc
2015-04-15 19:09:00 -07:00
Andy Goldstein
7fdd395653 Use a build flag to disable resumable digests.
Signed-off-by: Andy Goldstein <agoldste@redhat.com>
2015-04-16 01:19:57 +00:00
Stephen Day
7792f3882a Merge pull request #365 from dtan4/fix-doc-markdown
doc: modify markdown format in distribution.md
2015-04-15 18:03:51 -07:00
Derek McGowan
21504560e1 Update final upload chunk api doc
Updates description about content length and location

Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)
2015-04-15 17:55:15 -07:00
Daisuke Fujita
4cacbb4faf Modify markdown format in distribution.md
Signed-off-by: Daisuke Fujita <dtanshi45@gmail.com>
2015-04-16 09:22:24 +09:00
Stephen J Day
600de20037 Correctly log application version
Signed-off-by: Stephen J Day <stephen.day@docker.com>
2015-04-15 16:37:39 -07:00
Stephen Day
030006a6d7 Merge pull request #362 from RichardScothern/username-context
Add username to context
2015-04-15 12:26:26 -07:00
Richard
cb6a6125f6 Add auth.user.name to logging context 2015-04-15 10:34:24 -07:00
Stephen Day
ab2499df98 Merge pull request #360 from RichardScothern/gorelic-verbose
Enable configuration of new relic STDOUT logging
2015-04-14 14:55:17 -07:00
Richard
c359a6d172 Enable configuration of new relic STDOUT logging 2015-04-14 13:16:10 -07:00
Stephen Day
1c22aefa5e Merge pull request #355 from dmcgowan/compose-nginx-forward
Update nginx proxy setting to set forward headers
2015-04-13 15:14:39 -07:00
Derek McGowan
566768558c Update nginx proxy setting to set forward headers
Set forward headers so the IP and scheme get sent to the registry. This allows the registry to set a proper redirect with the correct scheme when HTTPS is being used.

Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)
2015-04-13 14:03:10 -07:00
Olivier Gambier
75919b7dcc Merge pull request #353 from kennethlimcp/patch-1
server --> serve
2015-04-13 07:29:54 -07:00
Kenneth Lim
f5a104dbcd server --> serve
Possible typo?
2015-04-13 22:11:48 +08:00
Richard Scothern
90af0f9b7a Merge pull request #343 from stevvooe/tracing-driver
context, storagedriver: trace function calls to Base storage driver
2015-04-10 16:55:57 -07:00
Stephen J Day
730ce83cdf Trace function calls to Base storage driver
Signed-off-by: Stephen J Day <stephen.day@docker.com>
2015-04-10 16:42:36 -07:00
Stephen J Day
d8ac79f643 Contextual tracing support for logs
This adds WithTrace function to the context package that allows users to trace
a time span between a trace allocation and returned function call. The
resulting context includes ids that will allow for future dapper-like analysis.

Please see the godoc addition for details.

Signed-off-by: Stephen J Day <stephen.day@docker.com>
2015-04-10 16:42:30 -07:00
Stephen Day
aa752f68a1 Merge pull request #338 from dmcgowan/nginx_v1_v2_deployment
docs: add nginx configuration for v1 and v2 registry
2015-04-10 16:35:50 -07:00
Stephen Day
ad76574d74 Merge pull request #336 from RichardScothern/docs
doc/spec: documentation for the Image Manifest V2 format
2015-04-10 16:26:27 -07:00
Stephen Day
7cfc6fd062 Merge pull request #350 from RichardScothern/s3-rootpath
Update S3 configuration documentation
2015-04-10 16:22:38 -07:00
Stephen Day
41dd70c901 Merge pull request #349 from RichardScothern/348
Prevent Close() from being called after Finish()
2015-04-10 16:21:01 -07:00
Richard
e564ac59c3 Documentation for the Image Manifest V2 specification 2015-04-10 16:13:32 -07:00
Richard
172449f91b Update S3 configuration documentation to accurately reflect rootdirectory name 2015-04-10 16:08:03 -07:00
Richard
3d529094fa Prevent Close() from being called after Finish() 2015-04-10 16:00:05 -07:00
Stephen Day
680d89b315 Merge pull request #347 from stevvooe/nanosecond-logging-timestamps
main: nanosecond logging timestamps
2015-04-10 15:48:58 -07:00
Derek McGowan
6f087829c9 Add nginx configuration for v1 and v2 registry
Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)
2015-04-10 15:16:13 -07:00
Stephen J Day
e10094141f Use nanosecond granularity timestmaps in log messages
Signed-off-by: Stephen J Day <stephen.day@docker.com>
2015-04-10 13:56:19 -07:00
Stephen J Day
85de3967aa Update logrus package for configurable TimestampFormat
Signed-off-by: Stephen J Day <stephen.day@docker.com>
2015-04-10 13:54:53 -07:00
Stephen Day
18d099be74 Merge pull request #307 from dmcgowan/namespace-interface
Rename top level registry interface to namespace
2015-04-10 12:58:01 -07:00
Derek McGowan
142d62798e Rename top level registry interface to namespace
Registry is intended to be used as a repository service than an abstract collection of repositories. Namespace better describes a collection of repositories retrievable by name.
The registry service serves any repository in the global scope.

Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)
2015-04-09 19:21:33 -07:00
Stephen J Day
4d91e791c0 Disassociate instance id from application
This moves the instance id out of the app so that it is associated with an
instantiation of the runtime. The instance id is stored on the background
context. This allows allow contexts using the main background context to
include an instance id for log messages. It also simplifies the application
slightly.

Signed-off-by: Stephen J Day <stephen.day@docker.com>
2015-04-09 18:45:39 -07:00
Stephen Day
5dd885b311 Merge pull request #325 from moxiegirl/docs-restructure
Breaking out README
2015-04-09 18:31:42 -07:00
Mary Anthony
cf9b4ab5e9 Breaking out README
Adding new material
Adding in template chomped in error
Cover install/deploy in README
Adding in Stephen's comments
Fixing you tabs!
Updating with commentary from pr
Updating with last minute comments

Signed-off-by: Mary Anthony <mary@docker.com>
2015-04-09 17:50:46 -07:00
Olivier Gambier
64a1aa89bd Merge pull request #339 from stevvooe/signature-fetch-prevent-false-sharing
registry/storage: prevent false sharing in signature fetch
2015-04-09 16:55:10 -07:00
Stephen J Day
84046e03e0 Prevent false sharing in signature fetch
The original implementation wrote to different locations in a shared slice.
While this is theoretically okay, we end up thrashing the cpu cache since
multiple slice members may be on the same cache line. So, even though each
thread has its own memory location, there may be contention over the cache
line. This changes the code to aggregate to a slice in a single goroutine.

In reality, this change likely won't have any performance impact. The theory
proposed above hasn't really even been tested. Either way, we can consider it
and possibly go forward.

Signed-off-by: Stephen J Day <stephen.day@docker.com>
2015-04-09 14:35:10 -07:00
Stephen Day
37f600a498 Merge pull request #329 from dmcgowan/compose-setup
Add docker compose configuration for v1 and v2
2015-04-09 13:44:35 -07:00
Derek McGowan
ce0b370dd0 Add docker compose configuration for v1 and v2
Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)
2015-04-09 13:23:21 -07:00
Stephen Day
5a4f66b2f8 Merge pull request #334 from BrianBland/configOmitEmpty
Adds omitempty to several configuration fields
2015-04-07 20:02:29 -07:00
Brian Bland
5955c73db7 Adds omitempty to several configuration fields
Includes deprecated Loglevel, Log.Formatter, and Log.Fields
2015-04-07 17:54:18 -07:00
Olivier Gambier
5fe1039947 Merge pull request #332 from stevvooe/case-sensitive-backend
registry/storage/driver: defer case-sensitive support to storage backend
2015-04-07 16:24:38 -07:00
Stephen J Day
e23ca5ac5f Defer case-sensitive support to storage backend
Rather than enforce lowercase paths for all drivers, support for
case-sensitivity has been deferred to the driver. There are a few caveats to
this approach:

1. There are possible security implications for tags that only differ in their
case. For instance, a tag "A" may be equivalent to tag "a" on certain file
system backends.
2. All system paths should not use case-sensitive identifiers where possible.
This might be problematic in a blob store that uses case-sensitive ids. For
now, since digest hex ids are all case-insensitive, this will not be an issue.

The recommend workaround is to not run the registry on a case-insensitive
filesystem driver in security sensitive applications.

Signed-off-by: Stephen J Day <stephen.day@docker.com>
2015-04-07 14:14:45 -07:00
Olivier Gambier
4e2d176d27 Merge pull request #330 from stevvooe/parallelize-signature-fetch
registry/storage: parallelize signature fetch in signature store
2015-04-06 22:30:35 -07:00
Stephen Day
434be18e35 Merge pull request #331 from stevvooe/update-rough-version
version: update rough version to be closer to reality
2015-04-06 20:05:59 -07:00
Stephen Day
4d27f4f920 Merge pull request #328 from jlhawn/cloudfront_issue
Handle cloudFront bucket prefix issue
2015-04-06 20:05:37 -07:00
Josh Hawn
0eb599329a Handle cloudFront bucket prefix issue
Docker-DCO-1.1-Signed-off-by: Josh Hawn <josh.hawn@docker.com> (github: jlhawn)
2015-04-06 19:46:05 -07:00
Stephen J Day
a307ff4471 Update rough version to be closer to reality
Signed-off-by: Stephen J Day <stephen.day@docker.com>
2015-04-06 19:32:33 -07:00
Stephen J Day
1eab4b79bc Parallelize signature fetch in signature store
To avoid compounded round trips leading to slow retrieval of manifests with a
large number of signatures, the fetch of signatures has been parallelized. This
simply spawns a goroutine for each path, coordinated with a sync.WaitGroup.

Signed-off-by: Stephen J Day <stephen.day@docker.com>
2015-04-06 19:13:15 -07:00
Stephen Day
688d1b805c Merge pull request #326 from bfirsh/use-entrypoint-in-dockerfile
Use entrypoint in Dockerfile
2015-04-06 15:23:40 -07:00