docker-py:在启动容器之前连接到网络

Morxa

直到最近,我可以按照以下步骤在启动容器之前将容器连接到网络:

params = {
    'image': 'busybox',
    'name': 'test',
}
result = docker_client.create_container(**params)
docker_client.connect_container_to_network(result['Id'], network_id)
docker_client.start(result['Id'])

但是,现在总是出现错误,因为在将容器连接到网络时尚未启动容器:

APIError: 500 Server Error: Internal Server Error ("Container 0b1005fc86be565d1a54c44f89f2a60d338b541f8b73805c2a367116bf04a060 is not running")

我可以使用命令行客户端重现相同的错误:

% docker create --name test busybox
7aa04b908b2ec45a37f272809ec909116cfae5ae80a13c6596822ca4d9b39a0e
% docker network connect test 7aa04b908b2e
Error response from daemon: Container 7aa04b908b2ec45a37f272809ec909116cfae5ae80a13c6596822ca4d9b39a0e is not running

因此,在创建容器时,需要将容器直接连接到网络:

% docker create --net=test busybox test

在中docker-py,如何在创建过程中直接将容器连接到网络?

Morxa

您可以使用HostConfig来配置容器连接到的网络:

network_mode 自v1.11起可用,并为容器设置了网络模式(“网桥”:在Docker网桥上为该容器创建一个新的网络堆栈,“无”:此容器未联网,“容器:[名称| id] ':重用另一个容器网络堆栈,'host':使用容器内的主机网络堆栈或标识现有Docker网络的任何名称)。

例如,您将运行:

params = {
    'image': 'busybox',
    'name': 'test',
    'host_config': docker_client.create_host_config(network_mode='test')
}
docker_client.create_container(**params)

这将容器连接到网络test

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

无法连接到Docker容器内的网络

来自分类Dev

Docker Swarm如何启动容器

来自分类Dev

Docker PHP使用参数启动容器

来自分类Dev

Docker Swarm如何启动容器

来自分类Dev

错误:连接到运行中的容器时,客户端网络套接字在建立安全TLS连接之前已断开连接-Docker远程容器

来自分类Dev

无法将Docker容器连接到Weave网络

来自分类Dev

将Docker容器连接到家庭网络

来自分类Dev

Docker-容器无法连接到网络端点

来自分类Dev

从Docker容器内部连接到主机网络上的IP地址

来自分类Dev

Docker网络,从Windows主机连接到linux容器

来自分类Dev

无法连接到通过Ansible启动的MySQL docker容器

来自分类Dev

启动Docker时如何连接到当前容器?

来自分类Dev

无法连接到由 docker compose 启动的 .net 容器

来自分类Dev

Docker容器-每次启动容器时ID都会更改

来自分类Dev

在不启动容器的情况下启动 Docker

来自分类Dev

从Docker容器连接到主机?

来自分类Dev

连接到暴露的Docker容器

来自分类Dev

无法连接到Docker容器

来自分类Dev

从Docker容器连接到CosmosDB

来自分类Dev

从Docker容器连接到主机?

来自分类Dev

连接到WordPress Docker容器

来自分类Dev

从 java docker 容器连接到 percona docker

来自分类Dev

调试集始终重新启动容器docker

来自分类Dev

Docker-compose up无法启动容器

来自分类Dev

停止和启动容器时出现奇怪的docker错误

来自分类Dev

Docker:如何重新启动容器内部的进程?

来自分类Dev

Docker:启动容器时出错:无法加载AUFS模块

来自分类Dev

Docker-Java:使用参数启动容器

来自分类Dev

Docker容器无法使用Docker网络连接到另一个