Commit Graph

121 Commits

Author SHA1 Message Date
Justin Cormack
89e98eefa0 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
Riyaz Faizullabhoy
4c810a27f9 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
02bd52b5c1 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
51ec80e84f Switch test to use alpine:3.5 while hub broken
There is a content trust issue with `alpine:latest` at present,
unblock the CI.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-20 12:34:44 +00:00
Justin Cormack
1521ae2dc5 Merge pull request #1056 from justincormack/tar2initup
Remove annoying output of dd
2017-01-19 14:50:58 +00:00
Justin Cormack
4638df2a9a Remove annoying output of dd
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-19 14:28:48 +00:00
Riyaz Faizullabhoy
f4b18b3b4e vsyscall=emulate for D4GCP
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2017-01-19 13:55:25 +00:00
Justin Cormack
7082a3161e Update ca-certificates to 20161130
In most places we use the Alpine one, which is already here, but
make sure this is updated, as we may use it more (yes, we should be
consistent).

Change the hash to just use the ca-cert hash, not the apt hash.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-19 09:15:54 +00:00
Justin Cormack
74d3bce70e Use buildmode pie for Go code
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-17 16:03:50 +00:00
Justin Cormack
7d071f52b1 Use Alpine for qemu-static
Static qemu-user is now available in Alpine edge. Includes the
patch for Golang crashing due to non standard signal usage.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-17 15:37:31 +00:00
Justin Cormack
a3991d2885 Merge pull request #1033 from justincormack/untar-hashes
Do not use tar to make hashes
2017-01-17 15:21:23 +00:00
Justin Cormack
c7ee4ea5e7 Merge pull request #1034 from justincormack/test-container
Build test container from a Docker container
2017-01-17 14:57:03 +00:00
Justin Cormack
0bd7f620ff Do not use tar to make hashes
As it includes timestanps in the tarball it does not make a stable
hash; use contents of the files instead.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-17 14:28:23 +00:00
Justin Cormack
975b598089 Merge pull request #1032 from justincormack/sha-hash
Use hash for sha image, otherwise requires network access for build
2017-01-17 14:25:52 +00:00
Justin Cormack
640afbbe33 Build test container from a Docker container
Corresponds to #1030 but for test container

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-17 14:24:57 +00:00
Justin Cormack
0e6d7d150f Use hash for sha image, otherwise requires network access for build
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-17 13:36:09 +00:00
Justin Cormack
7f2ebae2c3 Merge pull request #1030 from justincormack/build-containers
Build containerd containers from Docker containers
2017-01-17 13:24:58 +00:00
Justin Cormack
e2b4bacfd6 Build containerd containers from Docker containers
Simplifies the build process, and makes testing easier as there is a
Docker container you can run to test things.

Replaces #994

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-17 12:29:55 +00:00
Riyaz Faizullabhoy
56d5a5a711 Merge pull request #1021 from justincormack/c-compile
Use docker run to compile C code not docker build
2017-01-16 17:44:47 +00:00
Justin Cormack
6a315fab59 Clean up go-compile
- remove unused `--docker` option
- neater output for stages of check, build

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-15 19:43:03 +00:00
Justin Cormack
b5d9ff8cda Use docker run to compile C code not docker build
C version of #1006

Note that I switched all the C builds to use -O2 and that meant
that the compiler found some more warnings so I also fixed these
up. The possibly undefined ones were harmless, the aliasing one
is now more correct.

As these are small programs, the caching from `docker build` makes
no real difference, and worst case compile time is much better.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-15 15:55:14 +00:00
Justin Cormack
c074790a28 Merge pull request #1020 from justincormack/toybox-clean
Clean up build to not use alpine-build-c where not needed
2017-01-15 15:23:37 +00:00
Justin Cormack
421afc5000 Clean up build to not use alpine-build-c where not needed
Makes updates simpler.

Makes it explicit that `perf` currently requires Alpine 3.4, and update kernel version.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-15 14:07:46 +00:00
Justin Cormack
5cfb149637 Update to golang:1.7-alpine3.5 images
Now there is an Alpine 3.5 variant of the Go 1.7 images, use this.

fix #972

Note updated the containers/binfmt image as this will be converted
to go-compile shortly, at which point alpine-build-go can be removed.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-14 09:41:12 +00:00
Justin Cormack
ce281442d1 Less verbose kernel config test
As `grep` echoes the output, no need to have `set -x` on this script,
make output smaller and cleaner.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-14 00:09:50 +00:00
Justin Cormack
d2655a92f1 Merge pull request #1006 from justincormack/go-compile
Compile Go code with docker run not docker build
2017-01-13 19:15:22 +00:00
Justin Cormack
c8562d29ec Merge pull request #1008 from justincormack/ocaml-hub
Build OCaml iptables package once and push to hub
2017-01-13 19:15:07 +00:00
Justin Cormack
06598ae9bf Build OCaml iptables package once and push to hub
As the build requires networking, is non repeatable as dependencies
may change, makes sense to make it a static package for now.

Plan is to rewrite in Go anyway at some point see #467

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-13 16:36:03 +00:00
Justin Cormack
b184b3f0e1 Compile Go code with docker run not docker build
Go code is really fast to compile so we do not really need to use the
cache features of `docker build`. So make a compile container instead.
This can also output a build context and Dockerfile if you want to do
a build.

For reference, an uncached `docker build` of our Go code takes about
7s, a cached one 1.2s, and this takes 1.7s, so the best case is a little
worse, but we save a lot of images, and the worst case is better.

This is mainly designed to make the nested builds for containerd
containers simpler too. Will add a variant for the C code as well.

Also add `-static` to the flags so we always make static executables,
which was omitted previously.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-13 15:49:51 +00:00
Justin Cormack
dae19ed847 Fix Makefile deps
Just noticed this while copying it for another build.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-13 13:16:32 +00:00
Justin Cormack
262fb03750 Merge pull request #987 from justincormack/reinstate-4.4
Reinstate 4.4 support
2017-01-12 11:18:14 +00:00
Justin Cormack
27c5b9ee9e Adjust kernel config tests to support 4.4
- some options are different

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-11 17:35:25 +00:00
Justin Cormack
24e432d9cb Use riddler to generate config.json
- use jq to fix up the output where there are still issues
- some issues will need fixing up in future too
- can remove fixes later
- still plan to restructure the code around containers to make it easier and clearer

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-10 22:03:13 +00:00
Justin Cormack
0f73fd6e68 Remove some pushes to :latest
Missed these before, noticed while making a new one.

Also a copy paste error left one shasum incorrect.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-10 17:34:24 +00:00
Justin Cormack
18145b3401 Update bcc
- remove patch now https://github.com/iovisor/bcc/pull/887 is merged
- move the patches to the base image as it makes more sense like this

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-10 13:33:00 +00:00
Justin Cormack
b0285f7c84 Simplify base images
Some of the builds do not need to depend on docker-build-c, makes
update a bit simpler.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-09 15:37:54 +00:00
Rolf Neugebauer
be37d7b0fa ebpf: fix ebpf compile error
Some/most of the samples/tools throw and error, e.g.:
LLVM ERROR: Cannot select: 0x56049b79dcb0: ch,glue = BPFISD::CALL 0x56049a93ad60, TargetExternalSymbol:i64'__stack_chk_fail'
  0x56049b391500: i64 = TargetExternalSymbol'__stack_chk_fail'
  In function: waker

bcc-stack-protector.patch adds -fno-stack-protector to the CFLAGS
which fixes this error.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-01-06 18:06:05 +00:00
Rolf Neugebauer
8ed1408b19 ebpf: set LD_LIBRARY_PATH in container
This is needed for the python tools to find libbcc.so

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-01-06 16:49:38 +00:00
Riyaz Faizullabhoy
2b67a1da89 Set CONFIG_UBSAN, add to grep test
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2017-01-05 09:03:21 -08:00
Justin Cormack
5b838d53a6 Merge pull request #945 from justincormack/ebpf-container
Add a development eBPF container build
2017-01-05 15:07:14 +00:00
Justin Cormack
f6c2143197 Add a development eBPF container build
See `docs/ebpf.md` for how to use. This is built by CI or you can build
manually if you customise the kernel.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-05 11:59:28 +00:00
Riyaz Faizullabhoy
a197775b25 Kernel config grep test
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2017-01-04 09:44:17 -08:00
Justin Cormack
0209e93d3e Merge pull request #932 from justincormack/alpine-3.5
Update base images to Alpine 3.5
2016-12-28 19:58:59 +00:00
Justin Cormack
4ac42402e5 Update base images to Alpine 3.5
excludes
- Go base images as not yet available
- perf which does not build with latest image

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-12-28 18:09:08 +00:00
Justin Cormack
74dfe84cf0 Update base image to Alpine 3.5 official image
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-12-27 19:02:29 +00:00
David Gageot
b16b457306 Flag GCP platform
Signed-off-by: David Gageot <david@gageot.net>
2016-12-22 18:42:15 +01:00
Justin Cormack
cc72074b11 Merge pull request #915 from riyazdf/golinting
Add golint, gofmt, govet
2016-12-21 19:35:31 +00:00
Riyaz Faizullabhoy
c8e7a6dd43 Move linting to Go build
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2016-12-21 11:26:33 -08:00
Riyaz Faizullabhoy
b73d2a29a7 Add lint docker image for golang linting and testing to individual package subdirs
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2016-12-20 15:00:08 -08:00
Justin Cormack
8e32828a9f Update Alpine base image
Security update

- openssh 7.4

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-12-19 18:04:42 +00:00