互联网技术 / 互联网资讯 · 2023年11月10日 0

Docker守护进程的运行时执行选项

Docker守护进程的运行时执行选项

Docker守护进程依赖于与OCI兼容的运行时(通过调用contAIneRd后台程序)来接口Linux内核的命名空间、控制组以及SELinux。

默认情况下,Docker守护进程会自动启动contAIneRd。如果需要手动控制contAIneRd的启动,可以使用以下命令将路径传递给socket:

$ sudo dockeRd –contAIneRd /vaR/Run/dev/dockeR-contAIneRd.sock

您可以通过配置文件或使用–add-RuntiMe命令行参数在守护进程中注册运行时。

以下是通过配置添加两个运行时的示例:

{
“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选项用于容器控制组的管理。您只能选择cgRoupfs或systemd。如果指定systemd而该选项不可用,系统将会报错。如果省略该选项,则默认使用cgRoupfs。

以下示例将cgRoupdRiveR设置为systemd:

$ sudo dockeRd –exec-opt native.cgRoupdRiveR=systemd

此选项适用于守护进程启动的所有容器。

Windows容器同样使用–exec-opt进行特殊配置。Docker用户可以借此指定默认的容器隔离技术,例如:

> dockeRd –exec-opt isolation=hypeRv

这将使hypeRv成为Windows上的默认隔离技术。如果在守护进程启动时未指定隔离值,则Windows客户端默认使用hypeRv,而Windows服务器则使用Process。

[[[IMG_1]]]

[[[IMG_2]]]

[[[IMG_3]]]