如何在远程机器中生成 docker 容器

2024-01-10

是否有可能,使用适用于 Python 的 Docker SDK https://docker-py.readthedocs.io/en/stable/index.html,在远程计算机中启动容器?

import docker
client = docker.from_env()

client.containers.run("bfirsh/reticulate-splines", detach=True)
# I'd like to run this container ^^^ in a machine that I have ssh access to.

通过查看文档,这种类型的管理似乎超出了上述 SDK 的范围,因此在线搜索时我得到了提示:Python 的 kubernetes 客户端 https://github.com/kubernetes-client/python可能有帮助,但不知道从哪里开始。


没有明确记录适用于 Python 的 Docker SDK https://docker-py.readthedocs.io/en/stable/index.html,但你可以使用SSH 连接到 Docker 守护进程 https://docs.docker.com/engine/security/protect-access/通过指定主机ssh://[user]@[host]格式,例如:

import docker

# Create a client connecting to Docker daemon via SSH
client = docker.DockerClient(base_url="ssh://username@your_host")

也可以设置环境变量DOCKER_HOST=ssh://username@your_host并使用您提供的示例,该示例使用当前环境来创建客户端,例如:

import docker
import os

os.environ["DOCKER_HOST"] = "ssh://username@your_host"
# Or use `export DOCKER_HOST=ssh://username@your_host` before running Python

client = docker.from_env()

注意:正如问题中所指定的,这是考虑到您具有对目标主机的 SSH 访问权限。你可以测试

ssh username@your_host
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在远程机器中生成 docker 容器 的相关文章

随机推荐