Commit graph

38581 commits

Author SHA1 Message Date
Sebastiaan van Stijn
eb14d936bf
daemon: rename variables that collide with imported package names
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-14 17:22:23 +02:00
Sebastiaan van Stijn
797ec8e913
daemon: rename all receivers to "daemon"
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-14 17:22:21 +02:00
Sebastiaan van Stijn
5d040cbd16
daemon: fix capitalization of some functions
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-14 17:22:19 +02:00
Sebastiaan van Stijn
eeef12f469
daemon: address some minor linting issues and nits
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-14 17:22:17 +02:00
Brian Goff
ced91bee4b On startup, actually shutdown the container.
When a container is left running after the daemon exits (e.g. the daemon
is SIGKILL'd or crashes), it should stop any running containers when the
daemon starts back up.

What actually happens is the daemon only sends the container's
configured stop signal and does not check if it has exited.
If the container does not actually exit then it is left running.

This fixes this unexpected behavior by calling the same function to shut
down the container that the daemon shutdown process does.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2020-04-13 14:20:12 -07:00
Brian Goff
e6d949b9e7
Merge pull request #40802 from thaJeztah/bump_golang_1.13.10
Bump Golang 1.13.10
2020-04-13 10:49:20 -07:00
Shijiang Wei
e9d785ce3f enhance storage-opt validation logic in overlay2 driver
Signed-off-by: Shijiang Wei <mountkin@gmail.com>
2020-04-12 23:22:30 +08:00
屈骏
f3c1eec99e add zombie check for container when killing it, alernative fix for #40735.
Signed-off-by: 屈骏 <qujun@tiduyun.com>
2020-04-10 16:46:31 +08:00
Sebastiaan van Stijn
7cb13d4d85
Bump Golang 1.13.10
go1.13.10 (released 2020/04/08) includes fixes to the go command, the runtime,
os/exec, and time packages. See the Go 1.13.10 milestone on the issue tracker
for details:

https://github.com/golang/go/issues?q=milestone%3AGo1.13.10+label%3ACherryPickApproved

full diff: https://github.com/golang/go/compare/go1.13.9...go1.13.10

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-09 21:58:09 +02:00
Brian Goff
9c71a2be31
Merge pull request #40775 from thaJeztah/update_go_events
vendor: update go-events to fix alignment for 32bit systems
2020-04-09 12:05:22 -07:00
Brian Goff
40356083c0
Merge pull request #40794 from edigaryev/api-clarify-image-field
swagger: clarify the meaning of Image field in ContainerInspect endpoint
2020-04-09 12:03:53 -07:00
Brian Goff
81300a883d
Merge pull request #40777 from thaJeztah/revert_bump_bbolt
Revert "vendor: update go.etcd.io/bbolt v1.3.4"
2020-04-09 12:02:49 -07:00
Kir Kolyshkin
bd55aebad2
Merge pull request #40798 from thaJeztah/api_docs_fix_link
api docs: fix broken link on GitHub
2020-04-09 12:01:58 -07:00
Sebastiaan van Stijn
08e3da51f7
Merge pull request #40790 from cpuguy83/fix_builder_variant_check
Only check variant if set on image.
2020-04-09 20:57:13 +02:00
Kir Kolyshkin
9bdf473a7c
Merge pull request #40768 from cpuguy83/make_use_build_shell
Rename newer build_shell target to build
2020-04-09 11:55:50 -07:00
Brian Goff
36e80cb13b
Merge pull request #40793 from roman-mazur/upstream-moby/fix-tests
pkg/authorization: Fix test failures on macOS
2020-04-09 11:48:24 -07:00
Sebastiaan van Stijn
e9348898d3
api docs: fix broken link on GitHub
The pages that were linked to have moved, so changing the
links to point to docs.docker.com instead.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-09 13:44:51 +02:00
Brian Goff
933a87236f Reduce allocations for logfile reader
Before this change, the log decoder function provided by the log driver
to logfile would not be able to re-use buffers, causing undeeded
allocations and memory bloat for dockerd.

This change introduces an interface that allows the log driver to manage
it's memory usge more effectively.
This only affects json-file and local log drivers.

`json-file` still is not great just because of how the json decoder in the
stdlib works.
`local` is significantly improved.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2020-04-08 12:24:31 -07:00
Nikolay Edigaryev
c44fb42377 swagger: clarify the meaning of Image field in ContainerInspect endpoint
"Container's image" term is rather ambiguous: it can be both a name and an ID.

Looking at the sources[1], it's actually an image ID, so bring some clarity.

[1]: a6a47d1a49/daemon/inspect.go (L170)

Signed-off-by: Nikolay Edigaryev <edigaryev@gmail.com>
2020-04-08 14:24:51 +03:00
Roman Mazur
f2c432636b
pkg/authorization: Fix test failures on macOS
On macOS, unit tests were failing with

root@c4101a75c792:/go/src/github.com/docker/docker/pkg/authorization# go test .
--- FAIL: TestAuthZRequestPluginError (0.00s)
    authz_unix_test.go:295: listen unix authz-test-plugin.sock: bind: file name too long
--- FAIL: TestAuthZRequestPlugin (0.00s)
    authz_unix_test.go:295: listen unix authz-test-plugin.sock: bind: file name too long
--- FAIL: TestAuthZResponsePlugin (0.00s)
    authz_unix_test.go:295: listen unix authz-test-plugin.sock: bind: file name too long
time="2020-04-07T10:07:04Z" level=warning msg="Request body is larger than: '1048576' skipping body"
--- FAIL: TestMiddlewareWrapHandler (0.00s)
    authz_unix_test.go:295: listen unix authz-test-plugin.sock: bind: file name too long
FAIL
FAIL	github.com/docker/docker/pkg/authorization	0.120s

This change moves the socket creation from a working test directory to a tmp directory,
so the path is shorter.

Change-type: patch
Signed-off-by: Roman Mazur <roman@balena.io>
2020-04-08 13:06:50 +03:00
Brian Goff
fe2aca0e39 Only check variant if set on image.
This fixes an edge case where some images may not have a variant set
just because it didn't used to get set.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2020-04-07 15:09:12 -07:00
Alan Hoyle
06ca1606e1 Fixed typo in inventor comments.
Kirby and Noyce worked with "silicon" not "silicone"

Signed-off-by: Alan Hoyle <alan@alanhoyle.com>
2020-04-07 09:03:56 -04:00
Sebastiaan van Stijn
a6a47d1a49
Merge pull request #40759 from AkihiroSuda/move-rootless-out-of-experimental
rootless: graduate from experimental
2020-04-07 12:21:33 +02:00
Akihiro Suda
ff9fa7b43a
Merge pull request #40496 from thaJeztah/locally_scope_variable
TestCatchAll, TestStopCatch: remove unneeded goroutine
2020-04-07 09:54:25 +09:00
Akihiro Suda
d1304a8c74 Jenkinsfile: remove redundant DOCKER_EXPERIMENTAL
DOCKER_EXPERIMENTAL is already set in the head of the file.

Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2020-04-07 00:59:15 +09:00
Akihiro Suda
5ca47f5179 rootless: graduate from experimental
Close #40484

Note that the support for cgroup v2 isn't ready for production yet,
regardless to rootful or rootless.

Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2020-04-07 00:59:15 +09:00
Sebastiaan van Stijn
5a685dc7e4
Merge pull request #40778 from thaJeztah/unify_apis
docs: add API versions v1.30 - v1.37
2020-04-06 12:01:48 +02:00
Sebastiaan van Stijn
2b8ae08571
docs: add API versions v1.30 - v1.37
Adding separate documents for older API versions, so that these don't have to
be collected from each tag/release branch. For each version of the API, I picked
the highest release that uses the API (to make sure to include possible fixes
in the swagger);

    git mv api/swagger.yaml api/swagger-current.yaml

    git checkout v18.05.0-ce -- api/swagger.yaml
    git mv api/swagger.yaml docs/api/v1.37.yaml

    git checkout v18.02.0-ce -- api/swagger.yaml
    git mv api/swagger.yaml docs/api/v1.36.yaml

    git checkout v18.01.0-ce -- api/swagger.yaml
    git mv api/swagger.yaml docs/api/v1.35.yaml

    git checkout v17.11.0-ce -- api/swagger.yaml
    git mv api/swagger.yaml docs/api/v1.34.yaml

    git checkout v17.10.0-ce -- api/swagger.yaml
    git mv api/swagger.yaml docs/api/v1.33.yaml

    git checkout v17.09.1-ce -- api/swagger.yaml
    git mv api/swagger.yaml docs/api/v1.32.yaml

    git checkout v17.07.0-ce -- api/swagger.yaml
    git mv api/swagger.yaml docs/api/v1.31.yaml

    git checkout v17.06.2-ce -- api/swagger.yaml
    git mv api/swagger.yaml docs/api/v1.30.yaml

    git mv api/swagger-current.yaml api/swagger.yaml

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-06 10:14:15 +02:00
Sebastiaan van Stijn
381c192027
Revert "vendor: update go.etcd.io/bbolt v1.3.4"
This reverts commit f07f320651.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-06 09:11:27 +02:00
Akihiro Suda
d766bb2764
Merge pull request #40773 from thaJeztah/bump_golang_1.13.9
Bump Golang 1.13.9
2020-04-04 21:25:31 +09:00
Akihiro Suda
5fef754f1b
Merge pull request #40772 from tonistiigi/map-sync
builder: fix concurrent map write
2020-04-04 08:57:15 +09:00
Sebastiaan van Stijn
dc089c22ce
vendor: pkg/errors v0.9.1
full diff: https://github.com/pkg/errors/compare/v0.8.1...v0.9.1

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-04 01:54:46 +02:00
Sebastiaan van Stijn
e7183dbfe9
vendor: update go-events to fix alignment for 32bit systems
- relates to moby/buildkit 1111
- relates to moby/buildkit 1079
- relates to docker/buildx 129

full diff: 9461782956...e31b211e4f

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-04 01:53:27 +02:00
Brian Goff
dbe845c0fd
Merge pull request #40755 from thaJeztah/bump_bbolt
vendor: update go.etcd.io/bbolt v1.3.4
2020-04-03 16:42:49 -07:00
Sebastiaan van Stijn
bd8490c0de
vendor: jmespath/go-jmespath v0.3.0
This update is just adding some typo-fixes and adding a go.mod, but
pins it to a tagged release;

c2b33e8439...v0.3.0

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-04 00:59:15 +02:00
Sebastiaan van Stijn
e5ca303cff
vendor: add version comments for some dependencies
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-04 00:56:50 +02:00
Sebastiaan van Stijn
6ee9a1ad29
Bump Golang 1.13.9
go1.13.9 (released 2020/03/19) includes fixes to the go command, tools, the
runtime, the toolchain, and the crypto/cypher package. See the Go 1.13.9
milestone on the issue tracker for details:

https://github.com/golang/go/issues?q=milestone%3AGo1.13.9+label%3ACherryPickApproved

full diff: https://github.com/golang/go/compare/go1.13.8...go1.13.9

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-04 00:44:25 +02:00
Tonis Tiigi
5ad981640f builder: fix concurrent map write
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2020-04-03 15:33:15 -07:00
Akihiro Suda
846b557cb8
Merge pull request #40664 from carlosedp/riscv64-build
Add riscv64 support to the build scripts
2020-04-04 07:04:28 +09:00
Sebastiaan van Stijn
ff99a93b81
Merge pull request #39807 from thaJeztah/ci_busybox
hack/ci/windows.ps1: build busybox from local Dockerfile
2020-04-03 20:21:17 +02:00
Carlos de Paula
7ac638f86a Add support to riscv64 to the build scripts
Added riscv64 architecture support to the scripts used to build Docker
and it's dependencies.

Signed-off-by: Carlos de Paula <me@carlosedp.com>
2020-04-03 14:33:32 -03:00
Sebastiaan van Stijn
3e3cd7b255
Pin busybox to fixed version and verify sha256
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-03 09:55:26 +02:00
Sebastiaan van Stijn
97b742676b
hack/ci/windows.ps1: build busybox from local Dockerfile
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-03 09:32:30 +02:00
Sebastiaan van Stijn
8164f298f9
vendor jhowardmsft/busybox
taken from the 1.1 tag at https://github.com/jhowardmsft/busybox/tree/v1.1

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-03 09:16:05 +02:00
Sebastiaan van Stijn
238887ef06
Merge pull request #40757 from james-nesbitt/PRODENG-78-dockerfile-source-arg
build Dockerfile allows arg for base build FROM
2020-04-03 08:37:53 +02:00
Brian Goff
9688ca59b3 Rename newer build_shell target to build
These two targets seem interchangeable, just that the old `build` target
always built the `final` Dockerfile target even if the source was going
to be bind mounted anyway.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2020-04-02 15:48:43 -07:00
Kir Kolyshkin
eecf57622c
Merge pull request #40739 from thaJeztah/seccomp_time64
seccomp: add 64-bit time_t syscalls
2020-04-02 15:37:14 -07:00
Brian Goff
d7ba1f85ef Use containerd dist libs for plugin pull/pull
This removes the use of the old distribution code in the plugin packages
and replaces it with containerd libraries for plugin pushes and pulls.

Additionally it uses a content store from containerd which seems like
it's compatible with the old "basicBlobStore" in the plugin package.
This is being used locally isntead of through the containerd client for
now.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2020-04-02 15:03:06 -07:00
Sebastiaan van Stijn
af0415257e
Merge pull request #40694 from kolyshkin/moby-sys-mount-part-II
switch to moby/sys/{mount,mountinfo} part II
2020-04-02 21:52:21 +02:00
Sebastiaan van Stijn
b6f07fad51
Merge pull request #40712 from vboulineau/bugfix-windows-user-cpu
Fix CPU Stat value UsageInUsermode on Windows
2020-04-02 21:37:57 +02:00