Docker Engine 从 Docker 镜像启动 Docker 容器。如需要 Docker 引擎的功能,请使用 Docker 引擎。
如果您未使用针对 Docker 引擎的特定功能,则应考虑使用 DC/OS 通用容器运行时. DC/OS 通用容器运行时 提供一些功能,如对 Docker 容器不可用的 GPU 资源支持。
使用 Docker Engine 配置容器
- 默认入口点是容器的启动命令。如果入口点接受参数,则可以在 Marathon 应用定义的
args
字段中指定它们。如果没有默认入口点,则必须在cmd
字段中指定命令。为同一应用程序同时提供cmd
和args
则无效。 - 在 Docker Engine 中运行 Docker 镜像时,底层 Docker 日志文件不会被截断或轮换。这些文件可能会变得任意大(通常转到系统磁盘而不是存储磁盘)。这会导致磁盘空间有限的服务器耗尽磁盘空间。如果您正在使用 Docker Engine,Mesosphere 建议您禁用 Docker 日志记录。为此,请在应用定义的
log-driver
字段字段中将none
参数设置为containers.docker.parameters
如果希望使用 DC/OS UI 配置容器:-
单击 JSON 编辑器 切换按钮。
图 1. JSON Editor 切换按钮
-
在 JSON 配置中输入
parameters
字段。
-
DC/OS UI
-
单击 DC/OS GUI 服务 选项卡,然后单击 运行服务。
-
单击 Single Container。
-
输入服务 ID。
-
在 CONTAINER IMAGE 字段输入容器镜像。
-
单击 MORE SETTINGS。在 Container Runtime 部分,选择 DOCKER ENGINE 单选按钮。
-
单击查看和运行和运行服务。
DC/OS CLI
在 Marathon 应用定义中,将 container.type
参数设置为 DOCKER
.
{
"id":"<my-service>",
"container":{
"type":"DOCKER",
"docker":{
"image":"<my-image>",
"parameters": [
{
"key": "log-driver",
"value": "none"
}
]
}
},
"args":[
"<my-arg>"
]
}
有关示例,请参阅部署基于 Docker 的服务.