summaryrefslogtreecommitdiff
path: root/builtins/builtins.go
blob: 5b146cd20f968e5090a0eae2edf0e4f4e5c71c1a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
package builtins

import (
	"github.com/dotcloud/docker/engine"

	"github.com/dotcloud/docker"
	"github.com/dotcloud/docker/api"
	"github.com/dotcloud/docker/networkdriver/lxc"
)

func Register(eng *engine.Engine) {
	daemon(eng)
	remote(eng)
}

// remote: a RESTful api for cross-docker communication
func remote(eng *engine.Engine) {
	eng.Register("serveapi", api.ServeApi)
}

// daemon: a default execution and storage backend for Docker on Linux,
// with the following underlying components:
//
// * Pluggable storage drivers including aufs, vfs, lvm and btrfs.
// * Pluggable execution drivers including lxc and chroot.
//
// In practice `daemon` still includes most core Docker components, including:
//
// * The reference registry client implementation
// * Image management
// * The build facility
// * Logging
//
// These components should be broken off into plugins of their own.
//
func daemon(eng *engine.Engine) {
	eng.Register("initserver", docker.InitServer)
	eng.Register("init_networkdriver", lxc.InitDriver)
	eng.Register("version", docker.GetVersion)
}