gpt4 book ai didi

linux - 关于 docker 守护进程在自定义 CIDR block 中生成容器

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:07:27 27 4
gpt4 key购买 nike

我有一个用例,我想在不同的 CIDR block 中生成 docker 容器。此时我已经创建了自己的自定义图像。现在我创建了一个新的桥如下:-

service docker stop
ip link add br0 type bridge
ip addr add MYCIDRBLOCK dev br0
ip link set br0 up
docker -d -b br0

到目前为止一切顺利,守护进程给出了以下输出:-

INFO[0000] Listening for HTTP on unix (/var/run/docker.sock) 
INFO[0000] [graphdriver] using prior storage driver "devicemapper"
WARN[0000] Running modprobe bridge nf_nat failed with message: , error: exit status 1
INFO[0000] Loading containers: start.
........................
INFO[0000] Loading containers: done.
INFO[0000] Daemon has completed initialization
INFO[0000] Docker daemon commit=0baf609 execdriver=native-0.2 graphdriver=devicemapper version=1.7.0

现在我尝试启动我的 docker 容器并暴露所有端口:-

docker run -d -i -t -expose 1-59999 arunav/myimage /bin/bash

在客户端我得到:-

 Error response from daemon: Cannot start container 1d29cf0d8057fd62bae9e45e5a91968b675a6c43e115f7912dd00abb05d90dd9: invalid argument

在服务器端我得到以下信息:-

ERRO[0042] leaving endpoint failed: a container has already joined the endpoint 
ERRO[0042] Handler for POST /containers/{name:.*}/start returned error: Cannot start container 1d29cf0d8057fd62bae9e45e5a91968b675a6c43e115f7912dd00abb05d90dd9: invalid argument
ERRO[0042] HTTP Error err=Cannot start container 1d29cf0d8057fd62bae9e45e5a91968b675a6c43e115f7912dd00abb05d90dd9: invalid argument statusCode=500

所以一开始我以为是之前的某个容器占用了某个端点。所以我运行了这个命令来摆脱容器转储:-

 docker ps -a -q | xargs -n 1 -I {} docker rm {}

我不知道那可能是什么问题。有人可以帮忙吗?

最佳答案

为什么要加一个额外的桥?您是否尝试在 --bip arg 中使用具有显式 CIDR 的默认网桥?

--bip=CIDR — supply a specific IP address and netmask for the docker0 bridge, using standard CIDR notation like 192.168.1.5/24.

(来自 here)

关于linux - 关于 docker 守护进程在自定义 CIDR block 中生成容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31419719/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com