If you created containers from pre-OCI docker (e.g. docker-1.10.x)
upgrade may fail when restarting containers if the new docker daemon
has `--default-runtime` set.
In Fedora, we ship docker 1.12.6 with:
```
--default-runtime=oci
--add-runtime oci=/usr/libexec/docker/docker-runc-current
```
That way we don't rely on `docker-runc` being in `$PATH`.
The issue is, on upgrade from docker 1.10.3 without this patch, the
default runtime in `daemon/start_linux.go` is unconditionally set to
`runc=docker-runc` without honoring the `--default-runtime` flag set in
the docker daemon.
Reproducer:
- (1.10.3) `docker run -d -p 5000:5000 --restart=always --name registry
registry:2`
- upgrade to docker 1.12.6 (1.11.x has likely the same issue)
- the registry container fails to restart on upgrade with the following
log message `error="exec: \"docker-runc\": executable file not
found in $PATH: \"\""`
That error comes from the fact that we're setting the runtime in the
container's HostConfig to `runc` where instead we should have honored
the `--default-runtime` flag (in our case that's set to `oci`).
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
Upstream-commit: 9391a822ea4bee60284b4b2eb3a6535e20492569
Component: engine
bump version to 1.12.4
(cherry picked from commit 1564f02e33aab7e30e6b0b72f418a7e950d79893)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Upstream-commit: dee274848365c8c9f47c9b4c9783de87b062ed69
Component: engine
[1.12.x] added date after version number in changelog
(cherry picked from commit 4a13581d5786861ba66fa3e3483d43c0b57b3162)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Upstream-commit: 8dfd1919f5bf124630a49fba6097ced0ac4acf65
Component: engine
bump version and changelog for 1.12.4-rc1
(cherry picked from commit caa6b86f389dcc405603f25ae8fb7cb835a46388)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Upstream-commit: 6c7a449aa58fb767e62dd8de6b612f35cade8c2f
Component: engine
This test checks to make sure both v1.12 and v1.13 client against v1.13 daemon get correct `Size` after the fix.
This test is related to 30027.
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Upstream-commit: d9451f1c8c8a584053ef06e0801df14e37d43cbd
Component: engine
- Join a few tests in one when it makes sense (reduce the number of
container run and thus the overall time of the suites)
- Remove some duplication on several tests
- Remove some unused methods
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: 9af5d7c34039d5e9d8a7dca6ea148147dc482dee
Component: engine
The prune PR changed the meaning of the file to mean "space on disk
only unique to this image", this PR revert this change.
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
Upstream-commit: be20dc15af0cb281bd6d11586cfcc96bd50d12ca
Component: engine
When storeLayer.Parent returns the parent layer, it needs to use the same logic as Get where it wraps in a describablyStoreLayer if the layer is describable. Otherwise, on Windows, this can result in pushing the foreign layers, which is not supposed to be allowed.
This fixes https://github.com/docker/docker/issues/30080.
Signed-off-by: Stefan J. Wernli <swernli@microsoft.com>
Upstream-commit: d14b7212ad7b2b161afc6f0c9ac08daae14198c0
Component: engine
This fix tries to address the issue raised in 29946 where
listing networks from API will return `null` if the result of
network filter is empty.
The reason for the issue was that inside the `filterNetworks()`,
the return value was initialized as `nil`:
```
var typeNet []types.NetworkResource
```
This is inconsistent with other places where return value was
initialized with `[]`
```
displayNet := []types.NetworkResource{}
```
This fix addresses the issue by changing `typeNet` to `[]` as well.
This fix fixes 29946.
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Upstream-commit: 6ae709bf10e97c0a0ad8aebb9075f59eaea97ba9
Component: engine
This fix adds a new flag `--availability` to `swarm join`.
Related documentation has been updated.
An integration test has been added.
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Upstream-commit: 0f30c644441b3b4150252af1b41db99d4b6e697a
Component: engine
This fix tries to address the issue raised in 24596 where it was not
possible to join as manager only (`--availability=drain`).
This fix adds a new flag `--availability` to `swarm join`.
Related documentation has been updated.
An integration test has been added.
NOTE: Additional pull request for swarmkit and engine-api will
be created separately.
This fix fixes 24596.
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Upstream-commit: a8e7e37aa82d1adac67b05836ea97a06fbdfdbf0
Component: engine