Commit Graph

459 Commits

Author SHA1 Message Date
Justin Cormack
3c9c67bb16 remove 9pinit package, work now done by appropriate packages or mobyconfig tool
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-07 16:40:54 +01:00
Justin Cormack
69139c1ec9 hupper need not check for database
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-07 16:28:20 +01:00
Justin Cormack
952a3e53c9 use mobyconfig watch for hupper
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-07 16:27:24 +01:00
Justin Cormack
8b5044e040 support watch paths on mobyconfig
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-07 16:25:32 +01:00
Justin Cormack
fcc1f73780 start vsudd before docker
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-07 15:11:35 +01:00
Justin Cormack
793265c48d rename database to hostsettings
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-07 15:11:20 +01:00
Justin Cormack
4c624af8ac use config tool for host settings
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-07 14:58:35 +01:00
Justin Cormack
20e6da1cc3 add mobyconfig tool for simpler config
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-07 14:58:12 +01:00
Justin Cormack
07d4d9f920 put hupper config in config file
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-07 14:07:35 +01:00
Justin Cormack
d8001a2475 move transfused 9p mount into its own init file
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-07 10:35:50 +01:00
Justin Cormack
b1cbf3e96f move proxy 9p mounting into its own init file
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-07 10:31:08 +01:00
Justin Cormack
a6b0c50198 update to -rc4
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-07 09:55:57 +01:00
Justin Cormack
6ce61c6b3d Merge pull request #69 from ijc25/vsock
Add frontend support for virtio-vsock
2016-04-06 15:55:41 +01:00
Justin Cormack
caf3b90d1e fallback to alpine distfiles if upstream source has gone missing, fix #70
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-06 10:50:20 +01:00
Justin Cormack
3c97c540be remove more kexec code
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-06 10:28:15 +01:00
Justin Cormack
a15f580d78 remove experimental kexec code, now in branch elsewhere
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-06 10:27:29 +01:00
Ian Campbell
89a2e5fa45 vsudd: Enable timestamps on logging
Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-04-05 14:16:19 +01:00
Justin Cormack
46f987735e work around more license formatting issues
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-05 14:16:13 +01:00
Justin Cormack
af65a76cf3 highlight failed downloads
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-05 14:02:06 +01:00
Ian Campbell
be7a9a4cda vsudd: New daemon to proxy vsock to Unix domain sock
Used to proxy vsock 2376 <-> /var/run/docker.sock in the Moby VM.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-04-05 13:50:06 +01:00
Ian Campbell
4b1936db47 nc-vsock: Add unidirecitonal read/write modes
-r == read from the vsock
-w == write to the vsock

This makes it easier to write automated test cases.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-04-05 13:40:41 +01:00
Ian Campbell
778b82a0de nc-vsock: shutdown output socket on input EOF
Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-04-05 13:40:41 +01:00
Ian Campbell
2bfd4e62c8 nc-vsock: Keep going until both fds read EOF.
Rather than exiting when the first read hits EOF, ignoring any remaining data
going the other way.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-04-05 13:40:41 +01:00
Ian Campbell
2e70f27c79 nc-vsock: output to stdout rather than stdin
Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-04-05 13:40:41 +01:00
Ian Campbell
3d7da9df67 nc-vsock: Use a 256K buffer
Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-04-05 13:40:41 +01:00
Ian Campbell
a887fb110c Add VSOCK patches
These are WIP taken from git@github.com:stefanha/linux.git#vsock
(==4c9d2a6be1c6, using "cherry-pick -x") and correspond to RFC v5 of the
frontend patches posted in
http://thread.gmane.org/gmane.linux.kernel.virtualization/27455

There is no corresponding spec proposal update yet, but this set of patches
correspond (roughly) to addressing the feedback on v4 of the spec proposal
http://thread.gmane.org/gmane.comp.emulators.virtio.devel/1062.

kernel_config.arm modifications copied from x86, not tested.

Added /etc/kernel-patches/ directory to the image to be consumed by the
licensing.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-04-05 13:40:36 +01:00
Ian Campbell
f065ec7fdb Add nc-vsock utility (for testing AF_VSOCK)
Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-04-05 13:39:44 +01:00
Justin Cormack
22464eae51 fix licensing container to fix #70
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-05 12:40:26 +01:00
Justin Cormack
2668e441d5 remove 9p mounts for lofs and sockets
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-05 11:22:39 +01:00
Justin Cormack
09a98bf3e2 remove 9pudc, unused and not being fixed
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-04 18:21:01 +01:00
Justin Cormack
a65b7eff5a Do not pin alpine 3.3 version, we do apk upgrade anyway
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-04 15:56:51 +01:00
Justin Cormack
88b70e87c3 Merge pull request #66 from djs55/docker-proxy-ports
Add custom docker-proxy which understands host port forwarding
2016-04-04 16:32:11 +02:00
Justin Cormack
d0dee08049 Merge pull request #68 from justincormack/linux4.4
update to 4.4.6 stable kernel series
2016-04-04 15:13:09 +02:00
Justin Cormack
8220f615f0 update to 4.4.6 stable kernel series
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-04 14:04:55 +01:00
David Scott
c139fe3585 Import docker/docker/pkg/proxy from 18c7c67308bd4a24a41028e63c2603bb74eac85e
Signed-off-by: David Scott <dave.scott@docker.com>
2016-04-04 12:41:45 +01:00
David Scott
edcf29c5e4 docker: if network=slirp or native/port-forwarding=true, forward ports
Signed-off-by: David Scott <dave.scott@docker.com>
2016-04-04 12:41:45 +01:00
David Scott
8716bbde2c 9pinit: mount the port control filesystem under /port
This filesystem can be used to add and remove host port forwards e.g.

  mkdir /port/test
  echo -n '127.0.0.1:80:127.0.0.1:80' >> /port/test/ctl
  RESULT=$(cat /port/test/ctl)

Signed-off-by: David Scott <dave.scott@docker.com>
2016-04-04 12:41:45 +01:00
David Scott
1d66615bc4 docker: add a patch to add --userland-proxy-bin argument
This will let us override the `docker-proxy` with the enhanced host
port-forwarding aware version.

Signed-off-by: David Scott <dave.scott@docker.com>
2016-04-04 12:41:45 +01:00
David Scott
96dd99326f docker: compile from scratch rather than download binaries
A later patch will apply a non-upstream patch to docker.

Signed-off-by: David Scott <dave.scott@docker.com>
2016-04-04 12:41:45 +01:00
David Scott
9acc04f99b proxy: determine "my" address by examining the "docker" forward
When requesting a port forward we currently need to know the VM's
address from the point of view of the port forwarder. The easiest way to
discover this is to read it from the existing "docker" port forward.

Note this should all be revamped once we have vsock support.

Signed-off-by: David Scott <dave.scott@docker.com>
2016-04-04 12:41:02 +01:00
David Scott
e8fa5ace35 proxy: set up and tear down host port forwards
This patch uses the /port 9P filesystem to set up and tear down port
forwards on the host.

Signed-off-by: David Scott <dave.scott@docker.com>
2016-04-04 12:41:02 +01:00
David Scott
00ff8897a7 proxy: add exposePort and unexposePort stubs
This patch removes `proxyForever` and adds `sendError` and `sendOK` for
signalling to the parent process. The main function now sequences these
functions and calls stub functions `exposePort` and `unexposePort` which
will be hooked up in a later patch.

Signed-off-by: David Scott <dave.scott@docker.com>
2016-04-04 12:41:02 +01:00
David Scott
a8fc95eb9d proxy: on exit, return to main for cleanup
Previously the proxy.go would directly call `os.Exit`. This patch
causes control to return to `main` where we can tear down any port
forward.

Signed-off-by: David Scott <dave.scott@docker.com>
2016-04-04 12:41:02 +01:00
David Scott
444a6147d9 proxy: split the execProxy function into parts
Previously `execProxy` would
- create the proxy
- signal success/failure to the parent
- run forever (until signalled)

Since we want to add more proxy setup and teardown, this patch
removes the proxy creation from `execProxy` and renames it to
`proxyForever`. Later patches will be able to perform the necessary
side-effects before signalling success to the parent.

Signed-off-by: David Scott <dave.scott@docker.com>
2016-04-04 12:41:02 +01:00
David Scott
e1b8975016 Import docker/libnetwork/portmapper/proxy.go
Signed-off-by: David Scott <dave.scott@docker.com>
2016-04-04 12:41:02 +01:00
David Scott
dc9b79f116 Add skeleton /sbin/proxy program
This will eventually contain the `docker-proxy` replacement.

Signed-off-by: David Scott <dave.scott@docker.com>
2016-04-04 12:41:02 +01:00
Justin Cormack
f4a21e4d1f make tar more correct, by defining z
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-04 12:20:18 +01:00
Justin Cormack
b58f06212d fix typo in tar extract
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-04 12:13:45 +01:00
Justin Cormack
4b0c50a779 Remove docker-x for now as no longer working, and was not possible to enable. Will rework when strategy for supporting multiple dockers decided
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-04 11:47:48 +01:00
Justin Cormack
249151a445 Increase p and n ulimits to match boot2docker, fixes #64
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-04 11:44:27 +01:00