You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Elastic Beanstalk部署中Docker IP冲突及手动配置方法咨询

在Elastic Beanstalk中修改Docker网桥IP范围的方法

Elastic Beanstalk的Dockerrun.aws.json确实没有直接配置Docker网桥参数的选项,但可以通过自定义平台钩子来修改Docker默认网桥的IP范围,解决IP冲突问题,具体步骤如下:

  • 创建平台钩子目录结构
    在应用代码根目录下创建 .platform/hooks/prebuild 文件夹(prebuild阶段会在Docker服务启动前执行,确保配置生效)

  • 添加Docker网桥配置脚本
    在上述文件夹中创建可执行脚本(例如 01-set-docker-bridge.sh),内容如下:

    #!/bin/bash
    # 写入Docker守护进程配置,修改网桥IP段(替换为你需要的无冲突网段)
    cat > /etc/docker/daemon.json <<EOF
    {
      "bip": "172.20.0.1/16"
    }
    EOF
    # 根据实例系统版本选择重启命令
    if command -v systemctl >/dev/null 2>&1; then
        systemctl restart docker
    else
        service docker restart
    fi
    

    注意:将172.20.0.1/16替换为不与目标私有IP(172.17.57.52)冲突的网段,比如192.168.0.1/24或其他未使用的私有IP段。

  • 设置脚本权限
    给脚本添加可执行权限,避免部署时无法执行:

    chmod +x .platform/hooks/prebuild/01-set-docker-bridge.sh
    
  • 重新部署应用
    将修改后的代码包重新部署到Elastic Beanstalk,平台会在实例启动阶段自动执行该钩子脚本,更新Docker网桥配置。

部署完成后,可登录EC2实例执行netstat -rn查看路由表,确认docker0网桥的IP范围已更新为你设置的网段。

内容的提问来源于stack exchange,提问作者Harshith Bannanje

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 15:41:15