Commit Graph

2702 Commits

Author SHA1 Message Date
Rolf Neugebauer
9878cabd1e demo: Add script to start infrakit
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-04-07 15:43:02 +01:00
Justin Cormack
f46881c1a1 Merge pull request #1538 from justincormack/go-get
Simplify the instructions if you already have Go installed
2017-04-07 15:31:56 +01:00
Justin Cormack
958dd89891 Simplify the instructions if you already have Go installed
Most use cases can just do `go get`.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-04-07 15:03:39 +01:00
Justin Cormack
9553bbf514 Merge pull request #1536 from justincormack/fewer-targets
Remove Makefile targets that build `moby.yml`
2017-04-07 15:02:35 +01:00
Justin Cormack
6dc0ee4748 Remove Makefile targets that build moby.yml
Its trivial to just do `bin/moby build moby` etc.

Just leaving test targets, which should really move
out of root later.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-04-07 14:54:41 +01:00
Justin Cormack
90aeb44721 Merge pull request #1537 from justincormack/init-list
Make `init` accept a list of images not just a single one.
2017-04-07 14:42:29 +01:00
Justin Cormack
d9faecdee9 Make init accept a list of images not just a single one.
fix #1527

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-04-07 14:25:28 +01:00
Justin Cormack
8d0bc4c3c6 Merge pull request #1533 from justincormack/incremental-initrd
Write the initrd incrementally
2017-04-07 14:04:22 +01:00
Justin Cormack
4663fcca2b Write the initrd incrementally
Slightly better for demo flow as no long pause at the end

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-04-07 11:37:40 +01:00
Justin Cormack
aa17afaede Merge pull request #1532 from samoht/less-caps
miragesdk: remove CAP_SYS_PTRACe
2017-04-07 11:23:57 +01:00
Thomas Gazagnaire
81debfcd74 miragesdk: update README with moby build/run instructions
Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-04-07 12:13:06 +02:00
Thomas Gazagnaire
914d27bed9 miragesdk: remove CAP_SYS_PTRACE
Since https://github.com/opencontainers/runc/pull/774 we don't need this anymore.

Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-04-07 12:10:35 +02:00
Thomas Gazagnaire
d289de6416 miragesdk: update to latest runc
Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-04-07 12:10:35 +02:00
Justin Cormack
fb92dc250f Merge pull request #1529 from rneugeba/hk-infra
Update Hyperkit bindings and demo
2017-04-07 11:06:53 +01:00
Justin Cormack
79cc710fa7 Merge pull request #1531 from samoht/runc
update runc to version ac50e77bbb440dcab354a328c79754e2502b79ca
2017-04-07 10:58:23 +01:00
Rolf Neugebauer
93a9a827b6 demo: Update documentation
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-04-07 10:52:40 +01:00
Rolf Neugebauer
01e39a16ac demo: Tweak etcd start script
Try joining a new cluster initially. If that fails try to join
an existing cluster.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-04-07 10:52:40 +01:00
Rolf Neugebauer
17e4aa3e58 demo: Increase memory of etcd VMs to 1G
512MB is too small to install etcd via apk in the RAM disk.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-04-07 10:52:40 +01:00
Rolf Neugebauer
cc16ceb578 cli: Add option to the IP address for HyperKit VM
Note: This currently requires a custom version of VPNKit.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-04-07 10:52:40 +01:00
Rolf Neugebauer
971db3c0c3 infrakit: Add LogicalID -> IP -> UUID mapping
If the LogicalID passed in is a IP address, turn this into
a UUID and pass it to HyperKit. This will cause  VPNKit to
assign the IP address the VM.

Note: This currently requires a custom version of VPNKit

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-04-07 10:52:40 +01:00
Rolf Neugebauer
569a5a4ba8 vendor: Update the HyperKit go bindings
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-04-07 10:52:40 +01:00
Thomas Gazagnaire
226d394d15 update runc to version ac50e77bbb440dcab354a328c79754e2502b79ca
Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-04-07 11:46:34 +02:00
Justin Cormack
f4127faec3 Merge pull request #1526 from samoht/runc-calf
miragesdk: start the calf using runc
2017-04-07 10:42:58 +01:00
Justin Cormack
5b91cc4a32 Merge pull request #1528 from errordeveloper/kubernetes
Working Kubernetes master
2017-04-07 10:41:56 +01:00
Justin Cormack
2407afbbe0 Merge pull request #1530 from ijc25/create-directories-from-yaml
Support creating of directories in files section
2017-04-07 10:28:23 +01:00
Ilya Dmitrichenko
961acc4c21 Working Kubernetes master
Signed-off-by: Ilya Dmitrichenko <errordeveloper@gmail.com>
2017-04-07 10:09:10 +01:00
Ian Campbell
bca0b2ea69 Support creating of directories in files section
e.g.
    files:
     - path: etc/docker/daemon.json
       contents: '{"debug": true}'
     - path: var/lib/mydaemon
       directory: true

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2017-04-07 09:55:18 +01:00
Thomas Gazagnaire
a60ac17233 miragesdk: start the calf using runc
`nested runc` unfortunately needs a lot of caps/privileged. The removal of `readonly: true` is also a bit unfortunate.

Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-04-06 19:39:21 +02:00
Justin Cormack
dbb67e969b Merge pull request #1298 from riyazdf/readonly-rootfs
Remount rootfs as read-only after init, /var and /containers mounted as rw
2017-04-06 18:35:44 +01:00
Thomas Gazagnaire
05089f9249 Merge pull request #1469 from samoht/system-handlers
mirage-sdk: add system handlers
2017-04-06 19:28:36 +02:00
Justin Cormack
0511e13bd4 Merge pull request #1523 from rneugeba/demo-cloud
Update demo files/config/docs
2017-04-06 18:10:27 +01:00
Justin Cormack
ed650cc3ad Merge pull request #1525 from justincormack/oldscripts
Remove some obsolete scripts
2017-04-06 18:09:49 +01:00
Justin Cormack
e1c395f0ed Merge pull request #1524 from errordeveloper/kubernetes
WIP Kubernetes
2017-04-06 18:08:04 +01:00
Ilya Dmitrichenko
e68e42c0fa WIP Kubernetes
Signed-off-by: Ilya Dmitrichenko <errordeveloper@gmail.com>
2017-04-06 17:57:48 +01:00
Justin Cormack
c3031e22a3 Remove some obsolete scripts
- one was old for installing in d4m no longer relevant
- the other is relaced by `docker run hyperkit`

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-04-06 17:57:16 +01:00
Rolf Neugebauer
dca2b4d223 demo: Add files/instructions for a GCP based etcd cluster
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-04-06 17:44:19 +01:00
Riyaz Faizullabhoy
8ba64546eb Remount rootfs as read-only after init, /var and /containers mounted as
read-write

Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2017-04-06 09:30:46 -07:00
Justin Cormack
dc1818147c Merge pull request #1522 from dave-tucker/gce-gcp
Use GCP everywhere for consistency
2017-04-06 17:27:15 +01:00
Rolf Neugebauer
2bd75a621d demo: Switch etcd bootstrap from discovery service to static IPs
This makes the configuration simpler but requires us to be able
to set IP addresses on instances.

This also, for simplicity, reduces the number of nodes to 3.

The script does not make assumption about specific IP addresses,
but does assume that the nodes have IP addresses such as:
a.b.c.200, a.b.c.201, and a.b.c.202.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-04-06 17:22:56 +01:00
Dave Tucker
1b485eff4c moby: Add gcp platform to usage in moby run
Signed-off-by: Dave Tucker <dt@docker.com>
2017-04-06 17:10:04 +01:00
Dave Tucker
df1c66dd04 moby: Replace references to GCE with GCP
Signed-off-by: Dave Tucker <dt@docker.com>
2017-04-06 17:00:53 +01:00
Dave Tucker
bf7ab9f04c tools: rename mkimage-gce to mkimage-gcp
Also removes `mobyplatform` from the cmdline as this is no longer used

Signed-off-by: Dave Tucker <dt@docker.com>
2017-04-06 16:59:57 +01:00
Thomas Gazagnaire
bb536803be miragesdk: use the latest image dhcp-client image
Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-04-06 17:44:25 +02:00
Thomas Gazagnaire
f44e2ffbcb miragesdk: cleaner errors
Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-04-06 17:44:25 +02:00
Thomas Gazagnaire
fd447ee082 miragesdk: really allow to configure the DB path with the CLI
Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-04-06 17:44:24 +02:00
Thomas Gazagnaire
4437c4a23b miragesdk: add a config.json file for the calf
Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-04-06 17:44:24 +02:00
Thomas Gazagnaire
f5306b23ef miragesdk: fix the fork/exec init code and add a test
Make all the low-level init code synchronous to avoid weird blocks on `close`.
Also move the net and ctl file descriptor at the beginning of the fd space for
the calf.

The SDK also allow to spamn multiple exec calves, which will all have the same
fd map:

- 0: stdin  = /dev/null
- 1: stdout = pipe to parent stdout
- 2: stderr = pipe to parent stderr
- 3: net    = socketpair to parent "net" pipe
- 4: ctl    = socketpair to parent "ctl" pipe

Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-04-06 17:44:24 +02:00
Thomas Gazagnaire
3cec2b1f5e miragesdk: refactor the SDK
Expose a non-unix dependent flow-like API, so it is easier to test/use in a
unikernel.

Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-04-06 17:44:24 +02:00
Thomas Gazagnaire
a07952d4e6 miragesdk: shell out to ifconfig and ip to set the IP and routes
This forces us to bind mount /lib but will be replaced by calling the proper
bindings later on.

Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-04-06 17:44:24 +02:00
Thomas Gazagnaire
0938ae44f6 miragesdk: fail early on short read/write returning 0
Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-04-06 17:44:24 +02:00