Commit Graph

114 Commits

Author SHA1 Message Date
Justin Cormack
fa4f1aaedc 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
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
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
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
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
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
d8fd61861b Merge pull request #978 from nathanleclaire/collect_system_logs
Collect system container logs for diagnostics
2017-01-10 22:23:50 +00:00
Nathan LeClaire
e1026a1f95 Change system container label
Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2017-01-10 13:29:47 -08:00
David Gageot
13cc81a1aa [GCP] Configure diagnostics server
Signed-off-by: David Gageot <david@gageot.net>
2017-01-10 19:58:34 +01:00
Nathan LeClaire
1ca9096f55 Fix streaming API request error
Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2017-01-10 10:48:02 -08:00
Nathan LeClaire
69468bf42f Begin adding system container log support to diagnostics
Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2017-01-10 08:37:37 -08:00
Justin Cormack
fa62544f14 Merge pull request #975 from nathanleclaire/fix_daemon_avail_check
Fix daemon availability check
2017-01-10 11:42:30 +00:00
Nathan LeClaire
da59746ec6 Move daemon ping to use native Go code
Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2017-01-09 16:25:15 -08:00
Nathan LeClaire
2887824529 Check request type in /diagnose
Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2017-01-09 11:13:40 -08:00
Nathan LeClaire
814a351e93 Fix faulty daemon availability check
Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2017-01-09 10:27:13 -08:00
Justin Cormack
81a7af5299 Update Go build packages to Alpine 3.5
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-05 15:58:16 +00:00
David Scott
934fb2961b diagnostics: capture the networks and volumes db
This should help diagnose failures like that described in

https://github.com/docker/docker/issues/29636

Signed-off-by: David Scott <dave.scott@docker.com>
2017-01-04 11:52:43 +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
Riyaz Faizullabhoy
51088ee491 Add golint, make linting top-level
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2016-12-19 16:13:02 -08:00
Justin Cormack
1ecdeeed44 Update to Go 1.7.4
Security update.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-12-02 09:51:36 +00:00
Riyaz Faizullabhoy
4011d4842a Use digests instead of tags where possible
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2016-12-01 09:39:02 -08:00
Justin Cormack
28baa22239 Use daemon version in diagnostics
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-11-24 12:23:27 +00:00
Justin Cormack
59353f78c0 Update Docker init script for 1.13
- never update root filesystem see #583
- remove tests for earlier docker versions
- only use iptables override on desktop

fix #753

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-11-21 21:15:24 +00:00
Ian Campbell
f8eca9f52e diagnostics: Collect networking and swarm node + service info
Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-11-15 17:21:03 +00:00
Justin Cormack
06c4325294 Merge pull request #734 from justincormack/diagnostic-fixes
Fixes to diagnostics
2016-11-15 11:53:10 +00:00
Justin Cormack
b646642194 Fixes and improvements to diagnostics
- We now only have nslookup not dig.
- Use curl not wget.
- add /proc/cpuinfo

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-11-15 11:45:29 +00:00
Ian Campbell
b4db1822e4 diagnostics: Collect "docker version"
Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-11-15 11:35:12 +00:00
Ian Campbell
dea80af9b1 diagnostics: Collect "docker info"
Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-11-15 11:33:25 +00:00
Justin Cormack
a494a39142 Make diagnostics program return exit code
Add running diagnostics to test script.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-11-14 11:30:09 +00:00
Justin Cormack
a7d223768c Improve matching of mounted drive in diagnostics
Was failing on AWS as drive did not match patter that was too precise.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-11-04 14:09:12 +00:00
Justin Cormack
d435d5115b Update to Go 1.7.3
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-10-20 13:17:16 +01:00
Justin Cormack
db0376cb88 add git to Go build package
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-10-16 13:49:28 +01:00
Justin Cormack
cfbdc7d067 do not remove build containers
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-10-11 16:12:40 +01:00
Justin Cormack
0ac6beff82 Do not create latest tags for base images
As we never use these, do not create them.

Also update images where applicable.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-10-10 14:55:48 +01:00
Justin Cormack
fa19d3259b Use build container id rather than tagging builds
This means that multiple builds will not conflict, so we can
remove the lock from the CI. Also quieter when no errors.

Some still left to do, only done the ones used in build and CI
initially. Some of the others will be cleaned up anyway later.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-09-29 20:21:17 +01:00
Justin Cormack
9a96f5da8c Add support for running a development bundle of Docker
Add a database key `bundle` that contains a path to a Docker dev
bundle eg `/.../docker/bundles/1.13.0-dev` where the docker
binaries to run can be found. This will be paired with a script
in `docker/docker` to set this key, so users can easily help
contribute to Docker development.

The change will be permanent until the key is removed or a factory
reset is done, or the bundle cannot be found.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-09-13 22:46:27 +01:00
Justin Cormack
206dfe0950 simplify vendor tar
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-09-12 16:36:01 +01:00
Justin Cormack
43ab6520cf update to latest alpine base images
Signed-off-by: Justin Cormack <justin@specialbusservice.com>
2016-09-12 16:02:07 +01:00
Justin Cormack
5c634808df simplify tar for vendor directory
Signed-off-by: Justin Cormack <justin@specialbusservice.com>
2016-09-12 16:02:07 +01:00
Justin Cormack
276157a769 Move all output to the directories it will be in eventually
Signed-off-by: Justin Cormack <justin@specialbusservice.com>
2016-09-12 16:02:07 +01:00
Justin Cormack
d00ed9ce6e run with no network
Signed-off-by: Justin Cormack <justin@specialbusservice.com>
2016-09-12 15:59:19 +01:00
Justin Cormack
168fdedace clean up diagnostics server build
Signed-off-by: Justin Cormack <justin@specialbusservice.com>
2016-09-12 15:59:19 +01:00
Justin Cormack
28afc72a97 move vendor directory directly under packages
Signed-off-by: Justin Cormack <justin@specialbusservice.com>
2016-09-12 15:59:19 +01:00
Justin Cormack
089c592873 Include the Go binary in the hash of the go build base
As this is not installed via apk it was not being included in the
checksum.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-09-09 15:46:23 +01:00
Justin Cormack
4e2a2db5c7 set a timeout for database capture
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-09-08 22:18:04 +01:00
Justin Cormack
7daf4563e5 Merge pull request #380 from nathanleclaire/diagnostix
[WIP] Add ability for diagnostics to upload to S3 bucket
2016-09-08 09:41:03 +01:00
Justin Cormack
d4b5fc07c9 Closer to reproducible builds
Make an alpine base image for C and Go builds.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-09-06 13:18:11 +01:00