1.6. 使用 kubedock 运行容器
Kubedock 是一个最小的容器引擎实现,您可以在 OpenShift Dev Spaces 工作区内为您提供类似 Podman-/docker 的体验。在处理临时、临时和测试容器时,Kubedock 特别有用,比如在以下列出的用例中:
- 执行依赖 Testcontainers 框架的应用程序测试。
- 使用 Quarkus Dev Services.
- 运行存储在远程容器注册表中的容器,用于本地开发目的
您要与 kubedock 搭配使用的镜像必须符合 Openshift Container Platform 指南。否则,使用 kubedock 运行镜像会导致失败,即使同一镜像在没有问题的情况下在本地运行。
启用 kubedock
启用 kubedock 环境变量后,kubedock 将运行以下 podman
命令:
-
Podman 运行
-
Podman ps
-
podman exec
-
podman cp
-
podman logs
-
podman inspect
-
Podman kill
-
podman rm
-
Podman wait
-
Podman stop
-
Podman start
podman build
等其他命令由本地 Podman 启动。
在 kubedock 中使用 podman
命令有以下限制
-
podman build -t <image> . && podman run <image
> 命令将失败。使用podman build -t <image> . && podman push <image> && podman run <image
> 替代。 -
不支持
podman generate kube
命令。 -
--env
选项会导致podman run
命令失败。
先决条件
Process
将
KUBEDOCK_ENABLED=true
环境变量添加到 devfile。(可选)使用
KUBEDOCK_PARAM
变量来指定额外的 kubedock 参数。变量列表位于 此处。另外,您可以使用以下命令查看可用选项:kubedock server --help
# kubedock server --help
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Example
您必须在运行容器时将 Podman 或 docker API 配置为指向 kubedock 设置 CONTAINER_HOST=tcp://127.0.0.1:2475
或 DOCKER_HOST=tcp://127.0.0.1:2475
。
同时,您必须将 Podman 配置为在构建容器时指向本地 Podman。