Commit Graph

3757 Commits

Author SHA1 Message Date
Michael Crosby
400f16fc46 Add containers streaming API
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2018-07-26 13:55:20 -04:00
Michael Crosby
26e2dd6754
Merge pull request #2425 from avagin/docker-fixes
task: allow to specify namespaces which are restored externally
2018-07-25 10:26:08 -04:00
Michael Crosby
3289dc63e9
Merge pull request #2465 from fraenkel/lock_conn
Use connection lock when creating services
2018-07-25 10:24:08 -04:00
Kenfe-Mickaël Laventure
d47bda91e9
Merge pull request #2490 from thaJeztah/logging_nanosecond_precision
Set default log formatting to use RFC3339Nano with fixed width
2018-07-24 08:23:59 -07:00
Michael Fraenkel
9a4d1c5f8d Use connection lock when creating services
Fixes #2335

Signed-off-by: Michael Fraenkel <michael.fraenkel@gmail.com>
2018-07-24 10:46:17 -04:00
Sebastiaan van Stijn
da73b98b63
Set default log formatting to use RFC3339Nano with fixed width
This patch changes the logs format to use a fixed-width timestamp,
matching the format that's used in dockerd.

Before:

    $ containerd
    INFO[0000] starting containerd                           revision=a88b6319614de846458750ff882723479ca7b1a1 version=v1.1.0-202-ga88b6319
    INFO[0000] loading plugin "io.containerd.content.v1.content"...  type=io.containerd.content.v1
    INFO[0000] loading plugin "io.containerd.snapshotter.v1.btrfs"...  type=io.containerd.snapshotter.v1
    WARN[0000] failed to load plugin io.containerd.snapshotter.v1.btrfs  error="path /var/lib/containerd/io.containerd.snapshotter.v1.btrfs must be a btrfs filesystem to be used with the btrfs snapshotter"

After:

    $ containerd
    INFO[2018-07-24T08:11:07.397856489Z] starting containerd                           revision=c3195155cacb361cd3549c4d78901b20aa19579a version=v1.1.0-203-gc3195155
    INFO[2018-07-24T08:11:07.399264587Z] loading plugin "io.containerd.content.v1.content"...  type=io.containerd.content.v1
    INFO[2018-07-24T08:11:07.399343959Z] loading plugin "io.containerd.snapshotter.v1.btrfs"...  type=io.containerd.snapshotter.v1
    WARN[2018-07-24T08:11:07.399474423Z] failed to load plugin io.containerd.snapshotter.v1.btrfs  error="path /var/lib/containerd/io.containerd.snapshotter.v1.btrfs must be a btrfs filesystem to be used with the btrfs snapshotter"

Or, when running as child-process of dockerd:

Before:

    root@9637fcd85ea4:/go/src/github.com/docker/docker# dockerd --debug
    DEBU[2018-07-24T08:15:16.946312436Z] Listener created for HTTP on unix (/var/run/docker.sock)
    INFO[2018-07-24T08:15:16.947086499Z] libcontainerd: started new docker-containerd process  pid=231
    INFO[2018-07-24T08:15:16.947137166Z] parsed scheme: "unix"                         module=grpc
    INFO[2018-07-24T08:15:16.947235001Z] scheme "unix" not registered, fallback to default scheme  module=grpc
    INFO[2018-07-24T08:15:16.947463403Z] ccResolverWrapper: sending new addresses to cc: [{unix:///var/run/docker/containerd/docker-containerd.sock 0  <nil>}]  module=grpc
    INFO[2018-07-24T08:15:16.947505954Z] ClientConn switching balancer to "pick_first"  module=grpc
    INFO[2018-07-24T08:15:16.947717368Z] pickfirstBalancer: HandleSubConnStateChange: 0xc420507ab0, CONNECTING  module=grpc
    INFO[0000] starting containerd                           revision=d64c661f1d51c48782c9cec8fda7604785f93587 version=v1.1.1
    DEBU[0000] changing OOM score to -500
    INFO[0000] loading plugin "io.containerd.content.v1.content"...  type=io.containerd.content.v1
    INFO[0000] loading plugin "io.containerd.snapshotter.v1.btrfs"...  type=io.containerd.snapshotter.v1
    WARN[0000] failed to load plugin io.containerd.snapshotter.v1.btrfs  error="path /var/lib/docker/containerd/daemon/io.containerd.snapshotter.v1.btrfs must be a btrfs filesystem to be used with the btrfs snapshotter"

After:

    DEBU[2018-07-24T08:21:33.441741970Z] Listener created for HTTP on unix (/var/run/docker.sock)
    INFO[2018-07-24T08:21:33.442428017Z] libcontainerd: started new docker-containerd process  pid=232
    INFO[2018-07-24T08:21:33.442510827Z] parsed scheme: "unix"                         module=grpc
    INFO[2018-07-24T08:21:33.442598812Z] scheme "unix" not registered, fallback to default scheme  module=grpc
    INFO[2018-07-24T08:21:33.442681006Z] ccResolverWrapper: sending new addresses to cc: [{unix:///var/run/docker/containerd/docker-containerd.sock 0  <nil>}]  module=grpc
    INFO[2018-07-24T08:21:33.442770353Z] ClientConn switching balancer to "pick_first"  module=grpc
    INFO[2018-07-24T08:21:33.442871502Z] pickfirstBalancer: HandleSubConnStateChange: 0xc42018bc30, CONNECTING  module=grpc
    INFO[2018-07-24T08:21:33.457963804Z] starting containerd                           revision=597dd082e37f8bc6b6265ca05839d7a300861911 version=597dd082
    DEBU[2018-07-24T08:21:33.458113301Z] changing OOM score to -500
    INFO[2018-07-24T08:21:33.458474842Z] loading plugin "io.containerd.content.v1.content"...  type=io.containerd.content.v1
    INFO[2018-07-24T08:21:33.458911054Z] loading plugin "io.containerd.snapshotter.v1.btrfs"...  type=io.containerd.snapshotter.v1
    WARN[2018-07-24T08:21:33.459366268Z] failed to load plugin io.containerd.snapshotter.v1.btrfs  error="path /var/lib/docker/containerd/daemon/io.containerd.snapshotter.v1.btrfs must be a btrfs filesystem to be used with the btrfs snapshotter"

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2018-07-24 10:23:38 +02:00
Stephen Day
a88b631961
Merge pull request #2471 from crosbymichael/fatal
Don't fatal on epoll wait
2018-07-23 14:17:57 -07:00
Phil Estes
88ec4559b6
Merge pull request #2487 from thaJeztah/fix_compilation_issues_on_go1.11
Fix compilation failures on Go 1.11
2018-07-23 14:52:27 -04:00
Sebastiaan van Stijn
65ef8310d9 Fix compilation failures on Go 1.11
Compilation failed;

    windows\process.go:124: Wrapf format %s has arg s of wrong type github.com/containerd/containerd/runtime.Status
    windows\task.go:287: Wrapf format %d has arg id of wrong type string
    windows\task.go:300: Wrapf format %d has arg t.id of wrong type string

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2018-07-23 20:01:56 +02:00
Phil Estes
92d147ebde
Merge pull request #2485 from AkihiroSuda/fix-native-root-permission
native: set '/' permission to 0755
2018-07-23 09:52:53 -04:00
Akihiro Suda
7461739b58 native: set '/' permission to 0755
Unlike other snapshotters, the permission was previously set to 0700
unexpectedly.

Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2018-07-23 16:14:55 +09:00
Michael Crosby
0d52c71c80
Merge pull request #2474 from dmcgowan/lease-expiration
Improved lease management
2018-07-20 16:54:17 -04:00
Andrei Vagin
fc2fcf6b2a task: WithExit() doesn't have to overwrite existing options
Signed-off-by: Andrei Vagin <avagin@openvz.org>
2018-07-20 13:19:05 -07:00
Phil Estes
394784b3aa
Merge pull request #2482 from crosbymichael/v2cr
Fixes for runtimev2 and checkpoint restore
2018-07-20 13:56:18 -04:00
Michael Crosby
17ab11a236 Fixes for runtimev2 and checkpoint restore
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2018-07-20 12:09:29 -04:00
Michael Crosby
49fb363811
Merge pull request #2458 from fuweid/bugfix_apply_hardlink_to_softlink
bugfix: allow hardlink to softlink file
2018-07-19 14:38:20 -04:00
Derek McGowan
77ffa366af
Merge pull request #2476 from kolyshkin/osusergo
BUILDING.md: add osusergo for static build
2018-07-19 11:31:09 -07:00
Derek McGowan
2a8e28ae29
Merge pull request #2477 from crosbymichael/stress-runtime
Set runtime for stress tests
2018-07-19 11:26:04 -07:00
Michael Crosby
17ae673b5c Set runtime for stress tests
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2018-07-19 12:06:39 -04:00
Kir Kolyshkin
48570b39c5 BUILDING.md: add osusergo for static build
Go 1.11 includes a fix to os/user to be working in a static binary
(fixing https://github.com/golang/go/issues/23265). The fix requires
`osusergo` build tag to be set for static binaries, which is what
this commit documents.

[v2: sort tags alphabetically]

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2018-07-19 12:32:15 +03:00
Wei Fu
3b1534c47a bugfix: allow hardlink to softlink file
With `fs.RootPath`, the target file will be the file which the softlink
points to, like:

  touch /tmp/zzz
  ln -s /tmp/zzz /tmp/xxx
  ln /tmp/xxx /tmp/yyy

The `/tmp/yyy` should be same with the `/tmp/xxx`, not `/tmp/zzz`. We
should allow hardlink to softlink file.

Signed-off-by: Wei Fu <fhfuwei@163.com>
2018-07-19 15:13:50 +08:00
Michael Crosby
9743ff21c9 Don't fatal on epoll wait
This removes a log fatal on epoll wait for OOM events.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2018-07-18 16:40:31 -04:00
Derek McGowan
94cfce62ba
Merge pull request #2434 from crosbymichael/shimv2
Runtime v2 (shim API)
2018-07-18 13:14:10 -07:00
Michael Crosby
d53a96fbe4 Add comments for oci protos
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2018-07-18 15:12:18 -04:00
Derek McGowan
29b72d4ff0
Support lease filters
Signed-off-by: Derek McGowan <derek@mcgstyle.net>
2018-07-18 10:43:37 -07:00
Derek McGowan
00a99c0472
Add leases subcommand in ctr
Signed-off-by: Derek McGowan <derek@mcgstyle.net>
2018-07-18 10:43:37 -07:00
Derek McGowan
4c2ad9cefb
Update CRI vendor
Signed-off-by: Derek McGowan <derek@mcgstyle.net>
2018-07-18 10:43:37 -07:00
Derek McGowan
8cf3fad8d4
Add leases manager interface
Add leases manager to the leases package and use the
interface on the client and service.

Signed-off-by: Derek McGowan <derek@mcgstyle.net>
2018-07-18 10:43:37 -07:00
Michael Crosby
026b7d922f Add README.md to runtime v2
This readme specifies shim api and authoring docs.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2018-07-18 12:08:11 -04:00
Derek McGowan
c77c89b3d1
Add lease expiration to garbage collection
Allow setting an expiration label to have the garbage
collector remove an item after the specified time.

Signed-off-by: Derek McGowan <derek@mcgstyle.net>
2018-07-18 00:45:06 -07:00
Akihiro Suda
02579c8c3f
Merge pull request #2415 from dmcgowan/proxy-plugins
Add support for proxy plugins
2018-07-18 11:17:24 +09:00
Michael Crosby
fd31052d9c Add oom events to shim
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2018-07-17 16:52:05 -04:00
Stephen Day
dfde5ec316
Merge pull request #2418 from crosbymichael/hook-root
Handle abs path for rootfs in oci hook
2018-07-17 12:17:28 -07:00
Stephen Day
9ca23811c3
Merge pull request #2424 from kinvolk/alban/systemd-run
Document how to use systemd-run
2018-07-17 11:52:55 -07:00
Michael Crosby
e17969caad
Merge pull request #2436 from thaJeztah/fix_gofmt
Workaround for gofmt change in Go 1.11
2018-07-17 14:52:29 -04:00
Michael Crosby
fb1084d9cc
Merge pull request #2464 from tonistiigi/oci-export-platform
oci-exporter: do not filter current platform on export
2018-07-17 10:28:22 -04:00
Michael Crosby
ed697290da
Merge pull request #2463 from crosbymichael/temp-clean
Don't prevent boot on temp cleanup
2018-07-17 10:27:21 -04:00
Michael Crosby
7e49c601a8 Add shim start for shim creation
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2018-07-17 10:21:29 -04:00
Michael Crosby
da1b5470cd Runtime v2
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2018-07-17 10:21:29 -04:00
Michael Crosby
6de11ab973
Merge pull request #2470 from dmcgowan/fix-checkprotos
Fix options ordering in proto api txt files
2018-07-17 10:21:09 -04:00
Derek McGowan
d3cd5f1d01
Fix options ordering in proto api txt files
An upstream change caused the options to now be ordered

Signed-off-by: Derek McGowan <derek@mcgstyle.net>
2018-07-16 16:32:38 -07:00
Tonis Tiigi
82e7204a3c oci-exporter: do not filter current platform on export
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2018-07-13 17:08:01 -07:00
Phil Estes
cef05f19a7
Merge pull request #2461 from dmcgowan/seed_rand
Seed random on init
2018-07-13 16:30:43 -04:00
Michael Crosby
0105959c3d Don't prevent boot on temp cleanup
Fixes #2462
Fixes #2455

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2018-07-13 16:07:17 -04:00
Michael Crosby
8baeaff54b
Merge pull request #2460 from stevvooe/runc-build-instructions
build: include instructions for runc build
2018-07-13 09:52:23 -04:00
Derek McGowan
1c6929cbd4
Remove use of crypto rand in tests
Signed-off-by: Derek McGowan <derek@mcgstyle.net>
2018-07-12 17:51:55 -07:00
Derek McGowan
cce0a46c8a
Seed random on ctr and containerd startup
Signed-off-by: Derek McGowan <derek@mcgstyle.net>
2018-07-12 17:51:55 -07:00
Stephen Day
a5e0916aa9
build: include instructions for runc build
Including some build information about runc that has been helpful in my
development environment. This should allow one to build and install runc
next to containerd so that both can be worked on simultaneously.

Signed-off-by: Stephen Day <stephen.day@getcruise.com>
2018-07-12 15:55:52 -07:00
Derek McGowan
0c0c271b54
Update golang.org/x/sys
Signed-off-by: Derek McGowan <derek@mcgstyle.net>
2018-07-12 15:14:35 -07:00
Phil Estes
cb4bf2003f
Merge pull request #2454 from hairyhenderson/use-math-rand-instead-of-crypto-rand
Switching from crypto/rand to math/rand to avoid blocking
2018-07-12 11:40:16 -04:00