Commit Graph

2169 Commits

Author SHA1 Message Date
Justin Cormack
94c3564c44 Update to Docker 1.13.1-rc1
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-28 10:16:15 +00:00
Justin Cormack
3d510aea71 Update to AUFS 20170130
This now includes the patch we were carrying.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-28 10:11:57 +00:00
Justin Cormack
472222cce7 Merge pull request #1104 from rneugeba/patch-up
kernel: Update 4.9.6 patches
2017-01-27 18:09:46 +00:00
Rolf Neugebauer
f4286d8038 kernel: Update 4.9.6 patches
- Update VMBus lockup patch (0009) based on the one submitted to LKML
- Remove hack to forcea TimeSync protocol to version 3 (0005)
- Properly cherry-pick patch 0008 (was missing the cherry-pick reference)
- Add a new patch which properly negotiates the TimeSync protocol (0012)
- The latter required cherry-picking 0010 and 0011

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-01-27 16:12:24 +00:00
Justin Cormack
fd578a5c1e Merge pull request #1099 from riyazdf/kernup
Update kernels to 4.9.6 and 4.4.45
2017-01-27 09:01:52 +00:00
Riyaz Faizullabhoy
0dac267541 Update kernels to 4.9.6 and 4.4.45
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2017-01-26 17:25:22 -08:00
Justin Cormack
58a265728a Merge pull request #1096 from justincormack/tartar
Rework container creation
2017-01-26 07:16:13 +00:00
Justin Cormack
531678ae8f Rework container creation
- simplify the process by having the riddler container build the rootfs and config
- output tarred up rootfs and config.json as otherwise file ownership not preserved
- allow easy build of a collection of container tarballs with another conversion script

This makes it easy to choose which container images you want and just convert any
set to a initrd image
```
tar cf - container1.tar container2.tar | docker run -i tartar2initrd > initrd.img
```

Next stage will use a manifest to select the ones to add for each edition.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-25 22:53:28 +00:00
Justin Cormack
d658d8829e Add an sshd container
This is mainly for testing.

You can run with something like
```
docker run -v ~/.ssh/id_rsa.pub:/root/.ssh/authorized_keys -p 2222:22 -e TINI_SUBREAPER=1 --pid=host mobylinux/sshd:36c44542d8120e384c724a078e3e489f7a58382c
```

if you want to run in the host pid namespace. You must provide an
authorized key, you may provide a host key.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-25 16:34:05 +00:00
Justin Cormack
1f275f367a Merge pull request #1093 from justincormack/diag-early
Start diagnostics server earlier, before Docker
2017-01-25 16:02:11 +00:00
Justin Cormack
ab9964e207 Start diagnostics server earlier, before Docker
Allows it to be used to see what the boot state is.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-25 15:17:55 +00:00
Justin Cormack
1f98916b72 Merge pull request #1092 from justincormack/gce-clean
Clean up gce image
2017-01-25 09:24:58 +00:00
Justin Cormack
ae22355d44 Clean up gce image
Was missing in `make clean` and not noticed as we do not build by default.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-25 00:22:08 +00:00
Justin Cormack
5a3efc4f61 Merge pull request #1090 from nathanleclaire/chown_azure_proper
Chown azure proper
2017-01-25 00:20:39 +00:00
Justin Cormack
26610fd4f5 Merge pull request #1091 from justincormack/qemu-run
Use docker run to run tests and interactive containers
2017-01-25 00:16:06 +00:00
Nathan LeClaire
a58b992c7a Modify init script to create+chown proper directory
Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2017-01-24 15:53:19 -08:00
Justin Cormack
ba99b1ba40 Use docker run to run tests and interactive containers
Using docker build is slower and needs lots of Dockerfiles,
while a single image with a careful script can accept any type
of image, either with `-v` to share into `/tmp` for interactive
use (where you need the input and a tty, or by adding a tarball
for cases where there is no login such as running tests, so you
can still use a remote daemon in these cases.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-24 23:41:06 +00:00
Justin Cormack
f778cad623 Merge pull request #1088 from justincormack/move-base
Move base images directory to top level
2017-01-24 20:48:36 +00:00
Justin Cormack
b738120d41 Move base images directory to top level
These are standalone, better to have them at the top.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-24 18:55:23 +00:00
Justin Cormack
906e40add4 Move ebpf to its own directory
Unlike the other images in `base` this needs parts from the
Moby build so move it for now.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-24 18:50:38 +00:00
Justin Cormack
8816680c8d Merge pull request #1086 from justincormack/new-containerd
Shift to development track containerd
2017-01-24 17:50:45 +00:00
Justin Cormack
7f1e41eb37 Shift to development track containerd
Move to the development track of `containerd` not the legacy 0.2
branch. The commands have changed a bit.

This does increase the image size as we are bundling the Docker
copy and our copy, and the new one is larger as it is growing features.
Hopefully Docker will shrink eventually. Also we may replace `ctr`
with a library.

Fix #1029

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-24 15:39:44 +00:00
Justin Cormack
67176c4c52 Merge pull request #1081 from riyazdf/panic
Do not reboot on panic, except for desktop editions
2017-01-24 12:09:20 +00:00
Justin Cormack
c15ffd2cfb Merge pull request #1080 from justincormack/split-database
Split config database setup by platform
2017-01-24 12:08:33 +00:00
Justin Cormack
f6acd51fa4 Merge pull request #1084 from riyazdf/go-compile-lint
Merge lint.sh into compile.sh, remove unused alpine-build-go
2017-01-23 21:34:56 +00:00
Riyaz Faizullabhoy
f5954fbf5e Merge lint.sh into compile.sh, remove unused alpine-build-go
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2017-01-23 13:25:44 -08:00
Justin Cormack
a2d4ca3309 Merge pull request #1082 from RobbKistler/hyperkit-test-clean
Don't fail hyperkit-test after clean
2017-01-23 20:27:29 +00:00
Robb Kistler
e03af4abb5 Don't fail hyperkit-test after clean
Signed-off-by: Robb Kistler <robb.kistler@docker.com>
2017-01-23 11:12:42 -08:00
Riyaz Faizullabhoy
b8fcc4eca5 Set CONFIG_PANIC_TIMEOUT=0 in kernel config
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2017-01-23 10:58:58 -08:00
Riyaz Faizullabhoy
40d3f7d443 Set panic=1 for docker 4 win
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2017-01-23 10:44:06 -08:00
Justin Cormack
f3a8e77c99 Split config database setup by platform
Add basic database setup for AWS, GCP although these are not yet used
by the setup code but will be useful later.

Currently each is gated by `mobyplatform` but this can be removed once we
construct Moby per platform, and once these are containerised so they
are not run from `openrc`.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-23 18:08:26 +00:00
Justin Cormack
8702c886b8 Merge pull request #1079 from justincormack/swapdiskname
Clean up swap partition mounting logic
2017-01-23 17:04:12 +00:00
Justin Cormack
7a2e840476 Merge pull request #1077 from djs55/benchmark-ipc
tap-vsockd: add buffering
2017-01-23 16:22:12 +00:00
Justin Cormack
e36e15b371 Clean up swap partition mounting logic
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-23 16:20:10 +00:00
David Scott
c6eecc3feb tap-vsockd: allocate payload separately for better alignment
Previously we allocated `sizeof(struct ring) + size`. This patch
allocates `sizeof(struct ring)` and then `size` for the payload
separately. Hopefully the payload will be better aligned.

Signed-off-by: David Scott <dave.scott@docker.com>
2017-01-23 14:44:34 +00:00
Justin Cormack
8324e0df31 Merge pull request #1078 from justincormack/aufs-patch
Add aufs patch for 4.9 to fix issue with extended attribute removal
2017-01-23 14:16:08 +00:00
Justin Cormack
636d958b77 Add aufs patch for 4.9 to fix issue with extended attribute removal
See https://github.com/docker/docker/issues/30245

This should hit aufs upstream patch set shortly.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-23 14:01:16 +00:00
David Scott
d6c01556f1 tap-vsockd: add buffering
This patch adds a simple ring buffer implementation and uses it to buffer
the reads and writes to/from the AF_HYPERV socket and tap file descriptor.

This removes the need to perform small reads and writes for the per-packet
headers and allows a read on the Hyper-V socket to block at the same time
as a write to the tap device (and vice-versa)

The configuration in the init.d script is:

- a max message size (individual read or write) of 8192. Experimentally
  this seems to be the largest completely reliable size across the Windows
  versions we can support. Messages of length 16384 sometimes fail.
- a buffer size of 256KiB in each direction.

Single stream TCP throughput as measured by iperf increases modestly, by
another 100Mbit/sec.

Signed-off-by: David Scott <dave.scott@docker.com>
2017-01-23 12:17:52 +00:00
Justin Cormack
a06d77765b Merge pull request #1075 from justincormack/iptables-database
Fix up direct database accesses after move to /Database
2017-01-21 14:34:12 +00:00
Justin Cormack
d308fdac11 Fix up direct database accesses after move to /Database
In #1057 removed the 9p paths from the database mount
but that broke some users accessing them directly. Fix these.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-21 14:32:34 +00:00
Justin Cormack
6e4318badc Merge pull request #1072 from rneugeba/patch-up
Update kernel patches
2017-01-20 17:51:24 +00:00
Riyaz Faizullabhoy
ce0603f124 Merge pull request #1070 from justincormack/aufs-not-if-unsupported
Do not try to use aufs if kernel has no support
2017-01-20 16:34:40 +00:00
Rolf Neugebauer
fc72448ffd kernel: Add VMBus stability improvements
The four new patches prevent swamping VMBus with too many
notifications which, eventually, let Hyper-V assume there is
a DoS attempt and would thus throttle the VM for up to 5s.

The first three new patches were cherry-picked from upstream.
The final patch was received by email. Will update once it
has been submitted/accepted upstream.

Generated from: https://github.com/rneugeba/linux-stable/tree/v4.9.5-moby

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-01-20 16:15:04 +00:00
Rolf Neugebauer
ed62346b60 kernel: Rebase patches to 4.9.5
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-01-20 16:05:28 +00:00
Rolf Neugebauer
cfa62c5ca4 kernel: Rebase patches to 4.4.44
Generated from: https://github.com/rneugeba/linux-stable/tree/v4.4.44-moby

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-01-20 16:01:51 +00:00
Justin Cormack
0818086c41 Merge pull request #1066 from riyazdf/kernup
Upgrade to 4.9.5 and 4.4.44 kernels
2017-01-20 15:44:45 +00:00
Justin Cormack
7bfc23413c Merge pull request #1069 from justincormack/swap-fix
Always mount swap not just when created
2017-01-20 15:42:56 +00:00
Justin Cormack
3e807fc7a0 Do not try to use aufs if kernel has no support
This happens with the Moby mainline kernel and in future when we drop aufs.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-20 15:36:51 +00:00
Justin Cormack
f5b8d9a83e Always mount swap not just when created
Swap was not being mounted always.

See https://github.com/docker/for-win/issues/403

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-20 15:01:40 +00:00
Riyaz Faizullabhoy
5eefffd273 Upgrade to 4.9.5 and 4.4.44 kernels
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2017-01-20 15:00:49 +00:00