云计算核心技术Docker教程:Docker 守护进程dockerd运行时执行选项
Docker守护进程依赖于 OCI兼容的运行(通过调用containerd后台程序)作为其接口Linux内核namespaces,cgroups以及SELinux。 默认情况下,Docker守护程序会自动启动containerd。如果要控制containerd启动,请手动启动containerd并containerd使用该--containerd标志将路径传递到socket。例如: $ sudo dockerd --containerd /var/run/dev/docker-containerd.sock 可以通过配置文件或使用--add-runtime命令行参数在守护程序中注册运行时。 以下是通过配置添加2个运行时的示例: { "default-runtime": "runc", "runtimes": { "runc": { "path": "runc" }, "custom": { "path": "/usr/local/bin/my-runc-replacement", "runtimeArgs": [ "--debug" ] } } } 这是通过命令行的相同示例: $ sudo dockerd --add-runtime runc=runc --add-runtime custom=/usr/local/bin/my-runc-replacement 您可以使用--exec-opt标志指定的选项来配置运行时。所有标志的选项都有native前缀。单个native.cgroupdriver选项可用。 该native.cgroupdriver选项指定了容器cgroup的管理。您只能指定cgroupfs或systemd。如果您指定 systemd它不可用,则系统会出错。如果省略该 native.cgroupdriver选项, cgroupfs则使用。 本示例将设置cgroupdriver为systemd: $ sudo dockerd --exec-opt native.cgroupdriver=systemd 设置此选项适用于守护程序启动的所有容器。 Windows容器也将其--exec-opt用于特殊目的。Docker用户可以以此指定默认的容器隔离技术,例如: > dockerd --exec-opt isolation=hyperv 将成为hypervWindows上的默认隔离技术。如果在守护程序启动时未指定隔离值,则在Windows客户端上,默认值为 hyperv,在Windows服务器上,默认值为process。 (编辑:ASP站长网) |