Commit Graph

180 Commits

Author SHA1 Message Date
Ian Campbell
bbbbf3cb5d sshd: sync bind mounts with getty container
This adds all the binds from pkg/getty/Dockerfile to pkg/sshd/Dockerfile and
retains the existing /root/.ssh and /etc/resolv.conf binds.

With this `dist` and `ctr` function in a ssh session.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2017-06-26 11:52:41 +01:00
Ian Campbell
2864f467b9 getty,sshd: Include ca-certificates.
Otherwise:

    dist pull docker.io/library/redis:alpine
    dist: failed to do request: Head https://registry-1.docker.io/v2/library/redis/manifests/alpine: x509: failed to load system roots and no roots provided

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2017-06-26 11:52:41 +01:00
Ian Campbell
34fbe42615 getty,sshd: Mount host /tmp into containers.
ctr (which runs in the getty or ssh container) relies on sharing files in /tmp
with containerd (which runs in the host mount namespace). Specifically it
currently uses paths under /tmp/containerd for the stdio FIFOs of containers, resulting in:

    # ctr run -t docker.io/library/redis:alpine test
    ctr: rpc error: code = Unknown desc = runtime create failed: runc create failed: container with id exists: test

Currently it is not possible to specify a non-existent source directory for a
bind mount, so we cannot easily bind just /tmp/containerd. Sharing all of /tmp
doesn't sound like a terrible idea anyway.

Defering updating the sha in *.yml until after some further changes to these packages.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2017-06-26 11:52:41 +01:00
Ian Campbell
ea79748830 pkg/containerd: Add /etc/localtime set to UTC
containerd/ctr includes this in the default set of bind mounts for a container.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2017-06-26 11:52:30 +01:00
Rolf Neugebauer
d65bb86c37 Merge pull request #2080 from dave-tucker/pkg-mk
Simplify Makefiles for Packages
2017-06-22 13:35:43 +01:00
Dave Tucker
adae27b8d1 Simplify Makefiles for Packages
These now inherit from a top-level package.mk
Options like use of the network can be enabled on a per package basis
This removes a lot of duplicate code and make the maintenace of these
Makefiles much easier

Signed-off-by: Dave Tucker <dt@docker.com>
2017-06-22 12:40:03 +01:00
Sebastiaan van Stijn
4e1c91fc6e Update ASCII whale
The logo changed, and no longer has waves,
so removing them from the ASCII whale as well

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-06-20 23:22:23 -07:00
Akihiro Suda
4699f80ef7 test: add test-containerd
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-06-19 11:04:58 -07:00
Ian Campbell
9d2da9cabc Update to containerd c215531a8f63a98a69134e804fea4ee6d354bb90
This includes https://github.com/containerd/containerd/pull/994 and hence
requires updating the various instances of `/etc/containerd/config.toml`.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2017-06-16 13:42:24 +01:00
Ian Campbell
d51784adc0 Allow /etc/init.d/010-containerd to exit when complete
Don't think there is a need for it to remain and it drops an unnecessary
process.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2017-06-16 11:49:52 +01:00
Ian Campbell
5833d1b6bc init: replace ctr with a custom client using the containerd client library
Currently it supports only `service start <SERVICE>`, but it could grow e.g.
`stop`, `exec` etc in the future (although you can still use `ctr` for those).

In order to be able to use go-compile.sh the containerd build needs to move
from /root/go to /go as the GOPATH.

The vendoring situation is not ideal, but since this tool wants to be an exact
match for the containerd it seems tollerable to reuse its vendoring.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2017-06-16 11:48:53 +01:00
Ian Campbell
f7b2a739ee pkg/getty: Stop bind mounting /tmp/ctr
This doesn't exist with newer ctr or in systems where service containers are
not started using the ctr tool. All it contains today are the stdio FIFOs,
which are not in general useful to access after container creation.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2017-06-16 11:21:40 +01:00
Justin Cormack
684b77d62b Merge pull request #2048 from MagnusS/vpnkit-docker-ce
pkg/docker-ce: add vpnkit-expose-port
2017-06-15 15:18:54 -07:00
Magnus Skjegstad
e3a25bbf5b pkg/docker-ce: add vpnkit-expose-port
vpnkit-expose-port is the dockerd userland proxy used to expose
forwarding ports with vpnkit. This adds the binary to the image in
/usr/bin/vpnkit-expose-port, but does not enable it by default.

Signed-off-by: Magnus Skjegstad <magnus@skjegstad.com>
2017-06-15 19:48:30 +01:00
Rolf Neugebauer
d48715cd8c Merge pull request #2037 from tych0/usermode-helper
add a static usermode helper
2017-06-15 11:26:41 -07:00
Tycho Andersen
a4e0a594b1 add a static usermode helper
The binary is used in tandem with CONFIG_STATIC_USERMODEHELPER=y in 4.11+,
see the big comment in the binary for the current whitelist of binaries.

Signed-off-by: Tycho Andersen <tycho@docker.com>
2017-06-15 10:39:52 -07:00
Riyaz Faizullabhoy
6dedac2fe9 Update getty image for setsid changes
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2017-06-15 09:16:12 -07:00
Justin Cormack
7cf06bb284 Merge pull request #2038 from rn/cold-plug
Support cold-plugging devices
2017-06-15 18:07:17 +02:00
Avi Deitcher
42bf54de28 copy setsid to setsidu so it does not get overwritten by busybox when used in init, and ensure inittab is clean
Signed-off-by: Avi Deitcher <avi@deitcher.net>
2017-06-14 13:22:18 +03:00
Rolf Neugebauer
4e4efcd985 pkg: Add support for cold-plugged devices to init
mdev only supports hot-plug, ie devices which are added
after the kernel booted. For cold-plugged devices, ie devices
present when the kernel boots, we need to modprobe the drivers
differently. The additions to rc.init does just that.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-06-13 15:57:24 -07:00
Riyaz Faizullabhoy
35977c53d6 Merge pull request #2022 from justincormack/sys-in-getty
mount /sys in getty container and add and fix kernel tests
2017-06-12 09:29:44 -07:00
Magnus Skjegstad
24ec30e74c vpnkit-forwarder: add /pkg/vpnkit-forwarder
Adds /pkg/vpnkit-forwarder which downloads and builds vpnkit-forwarder
and vpnkit-expose-port from moby/vpnkit. Also includes an example for
forwarding `sshd` and updates the documentation for `hyperkit` to
include a `vpnkit` section.

`vpnkit` still requires a 9P mount for coordination, so the `socat`
forwarding is simpler to set up at the moment.

Signed-off-by: Magnus Skjegstad <magnus@skjegstad.com>
2017-06-12 14:46:48 +01:00
Justin Cormack
19b3beff9f Mount system /sys into getty container
Without this the mounts underneath here were not visible.

fix #2019

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-06-12 10:44:14 +02:00
Ken Cochrane
7dafc3be01 Added more AWS metadata to /var/config
Signed-off-by: Ken Cochrane <kencochrane@gmail.com>
2017-06-10 10:54:43 -04:00
Riyaz Faizullabhoy
8726adaa78 s/moby/linuxkit for run
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2017-06-08 17:10:14 -07:00
Riyaz Faizullabhoy
9c8e82734d fix disk size arg
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2017-06-08 17:09:52 -07:00
Avi Deitcher
f2cece3c61 Fix perms on /etc/init.d/000-issue
Signed-off-by: Avi Deitcher <avi@deitcher.net>
2017-06-08 18:49:29 +03:00
Justin Cormack
e0dc6302a8 Merge pull request #1978 from deitch/gettyless-init
Remove all getty from init
2017-06-08 15:33:21 +01:00
Justin Cormack
513f661458 Clean up getty Makefile to match others
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-06-08 11:02:48 +01:00
Riyaz Faizullabhoy
33d66d380e Merge pull request #1994 from tych0/fix-pkg-builds
fix package builds in some cases
2017-06-07 17:49:32 -07:00
Justin Cormack
9b82914f7d Run make tag on pkg directory to check packages build
This at least checks for buildability of packages, even if we
are not yet pushing them.

See https://github.com/linuxkit/linuxkit/issues/1991 for what it mitigates.
Will not pass until this is fixed.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-06-07 16:37:36 -06:00
Tycho Andersen
cf9397786c fix up second rngd containerd->alpine typo
Signed-off-by: Tycho Andersen <tycho@docker.com>
2017-06-07 16:36:38 -06:00
Tycho Andersen
a208413ac0 fix package builds in some cases
0eb21735ae accidentally broke some package
builds by switching linuxkit/alpine to linuxkit/containerd. Let's revert
the ones that shouldn't be there.

Closes #1991

Signed-off-by: Tycho Andersen <tycho@docker.com>
2017-06-07 16:19:40 -06:00
Justin Cormack
09e6ff2e34 Merge pull request #1977 from deitch/console-login
Add getty pkg
2017-06-07 23:15:47 +01:00
Avi Deitcher
5db7e6fe69 Add getty pkg
Signed-off-by: Avi Deitcher <avi@deitcher.net>
2017-06-08 00:11:53 +03:00
Riyaz Faizullabhoy
efbeea75d0 Merge pull request #1951 from dave-tucker/ports
Test that no ports are open
2017-06-07 11:30:13 -07:00
Dave Tucker
1af1a20a0d containerd: Don't expose metrics by default
This can be turned on if required but we'll default to leaving it off
It's been enabled in the top-level linuxkit.yml
This port is also non-standard and there doesn't appear to be a standard
port for this as yet.

Signed-off-by: Dave Tucker <dt@docker.com>
2017-06-07 15:18:13 +01:00
Avi Deitcher
a7c577468d Remove all tty init from init
Signed-off-by: Avi Deitcher <avi@deitcher.net>
2017-06-07 15:43:40 +03:00
Rolf Neugebauer
0c1498d8fa docs: Update platform documentation
- Prefix platform documentation with 'platform-'
- Add/Correct links from top-level README.md
- Tweak the Azure documentation
- Move the vsudd README to platform-hyperkit.md
- Add a dummy document for qemu/kvm

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-06-07 13:39:41 +01:00
Ian Campbell
0eb21735ae Update to containerd bdf9f5f7388e8203e63a74b89800f7f3dd4a7743
Note that this is not the latest (which was 95efd45db073 at time of writing)
but the next commit 6428b4bad0c2 merges "Port ctr to use client package" breaks
the use of `ctr run --runtime-config` (by removing that option).

This contains https://github.com/containerd/containerd/pull/954 which was
causing some services to fail to start.

All previous uses of 15541037b9 are updated to
5749f2e9e6.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2017-06-07 09:38:10 +01:00
Justin Cormack
ad7770fbf9 Update containerd
Fixes boltdb copying issue which caused failures.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-06-06 22:10:12 +01:00
Magnus Skjegstad
ae56dd81c2 vsudd: add /pkg/vsudd with README and example yml
Signed-off-by: Magnus Skjegstad <magnus@skjegstad.com>
2017-06-06 16:32:01 +01:00
Ken Cochrane
60d099176c Added AWS provider to metadata package
Signed-off-by: Ken Cochrane <kencochrane@gmail.com>
2017-06-01 16:44:58 -04:00
Justin Cormack
ad1d33255d Change mkimage to use two disks
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-06-01 14:41:32 +01:00
Ian Campbell
eaedbd454c Update containerd to 7fc91b05917e93d474fab9465547d44eacd10ce3
Update everything including the current
linuxkit/containerd:b1766e4c4c09f63ac4925a6e4612852a93f7e73b to the new
linuxkit/containerd:deaf5bf838bf7f131c2287ecff3ed9835b0497e2.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2017-05-31 17:05:24 +01:00
Justin Cormack
5bb90f166a Merge pull request #1934 from justincormack/default-ns-change
Default ns change
2017-05-30 16:20:38 +01:00
Rolf Neugebauer
8cbf7cb064 Merge pull request #1883 from ijc25/qemu-ga
Add a simple qemu guest agent package
2017-05-30 16:15:55 +01:00
Justin Cormack
d92e19f020 Update the yaml files with new builds
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-05-30 15:40:51 +01:00
Justin Cormack
d9aada88dc Update for new default namespaces
See https://github.com/moby/tool/pull/56

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-05-30 15:06:30 +01:00
Justin Cormack
08e211df44 Use the sinit conventions for init
This should make it easier to switch out `init` for other versions,
although the `getty` config still needs to be removed.

- use `/bin/rc.init` for start
- use `rc.shutdown` for stop
- make `rc.init` run other code.
- merge `containers` and `containerd` startup code

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-05-30 14:14:34 +01:00