windows docker 容器启动报错:Ports are not available

卷积自编码器实现指纹图像高保真压缩重建 指纹图像重建并非生成式复原或法证增强,而是一种面向生物识别任务的有损压缩-无损还原过程。其核心原理是利用卷积自编码器(CAE)的局部感受野与对称编解码结构,在潜空间中高效表征脊线走向、分叉点、端点等判别性纹理特征。相比VAE模糊输出和GAN幻觉生成,CAE以轻量模型(<1.2M参数)、低延迟(Jetson Nano 18ms)和高保真度(PSNR>38.2dB,SSIM>0.94)支撑边缘部署。该技术显著提升指纹在嵌入式门禁、移动巡检等场景下的存储效率与比对鲁棒性,同时为活体检测、跨传感器适配等延伸应用提供 阅读详情

docker 启动容器报错: (HTTP code 500) server error - Ports are not available: listen tcp 0.0.0.0:6379: bind: An attempt was made to access a socket in a way forbidden by its access permissions.

问题排查

  • 检查端口是否被其它程序占用:netstat -ano | findstr 6379,如果有需要自己处理一下,关掉冲突程序或改端口

  • 如果本地端口没有被占用,检查是否是与hyper-v保留端口冲突了
    查看hyper-v启动后的保留端口范围
    netsh interface ipv4 show excludedportrange protocol=tcp

    协议 tcp 端口排除范围 
    
    开始端口    结束端口
    ----------    --------
          1026        1125
          1226        1325
          1326        1425
          1426        1525
          1526        1625
          2180        2279
          6220        6420
    ... 
    

    结果显示6220~6420端口被保留,其中包括了redis的6379端口,需要修改修改hyper-v保留端口,排除6379

修改hyper-v保留端口

  1. 以管理员身份运行 powershell
  2. 停止Windows NAT 驱动程序
    net stop winnat
  3. 使用以下命令永久排除6379作为保留端口
    netsh int ipv4 add excludedportrange protocol=tcp startport=6379 numberofports=1 store=persistent
    提示:关键在于store=persistent参数表示持久化信息
    上面的命令可以通过修改numberofports参数保留startport开始的多个端口
  4. 开启Windows NAT 驱动程序
    net start winnat
  5. 再次运行 netsh interface ipv4 show excludedportrange protocol=tcp 命令可以看到6379端口已被排除(带有*号标记)
    管理员权限运行
    协议 tcp 端口排除范围
    
    开始端口    结束端口
    ----------    --------
            80          80
          2379        2379     *
          2380        2380     *
          3306        3306     *
          5357        5357
          6379        6379     *
         50000       50059     *
    
    * - 管理的端口排除。
    

其他端口号被占用同理,上面我排除了mysql、redis、etcd的端口,常用的都可以加上


参考资料:

  • https://www.cnblogs.com/codeninja/p/14759920.html
  • https://www.cnblogs.com/uncmd/p/16056993.html
Docker】端口被占用解决方法总结(Ports are not available_ exposing port TCP 0.0.0.0_80 -_ 0.0.0.0_0_ listen tcp ) 意思是,我的80端口被占用了。提示:以下是本篇文章正文内容,下面案例可供参考不仅适用docker端口被占用,打不开,应该也是适用其他的情况。 阅读详情

相关推荐

Docker Engine实操入门:从docker: command not found到可调试容器

容器技术本质是操作系统级虚拟化,依托Linux namespaces与cgroups实现进程隔离;Docker Engine作为最主流的容器运行时,封装了runc等底层能力,提供统一CLI接口与镜像管理机制;其技术价值在于降低容器化门槛、保障环境一致性,并支撑CI/CD与微服务架构落地;典型应用场景包括本地开发调试、PHP/Java应用容器化、Docker Compose多服务编排及向Kubernetes平滑演进;本文聚焦Docker Engine安装配置、daemon.json深度调优、镜像加速、权限与网

weixin_34008933的博客 368

(HTTP code 500) server error - Ports are not available : exposing port TCP 0.0.0.0:3000

这命令的实质是简化版的重启电脑,让 Hyper-V 初始化一些随机端口来保留,如果它仍然没有释放你所需要的端口,你可能需要再次操作。也就是因此,该回答下面有些人回复有用,有些人回复没用,就是因为这种解决方式解决问题的概率非常的随机。执行这两行命令,说白了就是重启一下 winnat。1.停止Windows NAT 驱动程序。2.开启Windows NAT 驱动程序。容器启动时报上面的错误。还不行,就再重复一次!管理员权限运行cmd。

suncheng的博客 4149

Docker容器启动报错Error response from daemon: Ports are not available: exposing port TCP 0.0.0.0:3306 -> 1

一看就知道是端口 3306 被占用了。作为一个前端程序员,有时候自己搭 MySQL 玩一下数据也是常事,但这种端口冲突真的很烦。所以我决定写一篇记录,希望能帮到你。报错是因为端口已被占用;3306 是 MySQL 的默认端口,容易冲突;查看并关闭占用的进程;或者改用其他端口映射,比如 3307:3306;可使用一键脚本提升效率。

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 8503

(HTTP code 500) server error - Ports are not available: exposing port TCP 0.0.0.0:6379 -> 0.0.0.0:0:

如果没有发现占用## windowsdocker 启动容器报错 **(HTTP code 500) server error - Ports are not available: exposing port TCP 0.0.0.0:6379 -> 0.0.0.0:0: listen tcp 0.0.0.0:6379: bind: An attempt was made to access a socket in a way forbidden by its acc端口的进程,可以尝试重启NAT网络。

m0_51431003的博客 3330

(HTTP code 500) server error - Ports are not available: exposing port TCP 0.0.0.0:3306 -> 0.0.0.0:0:

在使用 Docker Desktop 部署 MySQL 服务时,借助 Docker Compose 来管理容器启动与配置。期望 MySQL 服务能够正常启动并监听 3306 端口,以便其他应用程序可以与之建立连接并进行数据交互。

discover 5101

(HTTP code 500) server error - Ports are not available: exposing port TCP

(HTTP code 500) server error - Ports are not available: exposing port TCP 0.0.0.0:6041 -> 0.0.0.0:0: listen tcp 0.0.0.0:6041: bind: An attempt was made to access a socket in a way forbidden by its access permissions.

阿P的技术博客 2929

docker启动容器报错

docker容器启动报错

qq_38868073的博客 422

docker启动Dify报错ports are not available

报错是因为Dify启动时会将容器端口映射到宿主机的80端口上,但是windows系统的80端口容易被占用,因此修改为映射到8080端口即可解决。

qq_44802279的博客 704

docker启动容器错误,Error response from daemon: Ports are not available

这属于Windows中的一个小问题,重启NAT网络服务即可。发现端口没有被占用。

CharleneD的博客 452

Docker: Error response from daemon: Ports are not available 端口没被占用,却显示被占用

今天在Windows下用Docker跑个RocketMQ,启动的时候报错,说端口占用,但其实并没有占用。结果发现Docker报错所指向的端口并没有被占用,又遇到了奇怪问题。

qq_51240732的博客 1277

Docker run时报错 Ports are not available: exposing port

起因时,今天启动运行RabbitMQ时报错,一时间很难纳闷,昨天还很正常怎么突然有问题了。不用重启,但跟方案一 一样可能还会被占用。查了下信息,发现是Hyper-V保留端口导致的。1.首先检查了服务,确认后台没有重复启动。2.检查了端口,也没有被其他应用占用。管理员权限运行cmd。管理员权限运行cmd。协议 tcp 端口排除范围。开始端口 结束端口。* - 管理的端口排除。

qingxinputi的博客 717

DockerWindows11操作系统下安装、使用Docker保姆级教程_docker windo11

在初步认识了解了后,下面正式进入使用环节!首先先到Docker官网下载最新官方Docker for Windows链接:Docker下载 进入设置的页面 点击 运用并重启即可 如果我们本地没有 镜像,我们可以使用命令来载入 镜像: 查看所有镜像源: 以下命令使用 镜像启动一个容器,参数为以命令行模式进入该容器: 所以,更常用的是这种后台启动的方式: 参数说明:运行容器,一般是指定容器内的端口和容器的名字(不能与之前的名字重复):编辑容器内的端口:编辑容器的名字最后的 为镜像源 删除容器

df2551的博客 1万+

关机重启后,Docker报错ports are not available An attempt was made to access a socket in a way forbidden by i

启动一下container即可。

qq_51714354的博客 1164

【Linux排障实战】Docker容器启动失败怎么查:端口、日志、权限与网络

本文针对 Docker 容器启动失败等常见故障,总结了一套由浅入深的排障方法论。文章摒弃了“盲目重启”的误区,梳理了容器四种核心状态的底层逻辑,并围绕退出码诊断、日志捕获、端口映射与容器内监听的区别、挂载目录 UID/GID 权限冲突、Compose 变量解析、容器间网络通信、以及健康检查失效等八大高频痛点,结合 Linux 和 Windows 场景给出了具体的验证命令与最小化复现方案。旨在帮助开发者打破“猜想式”排障,建立起可复现、可验证的闭环证据链,精准定位故障根因。

2402_87731470的博客 2400

Docker Desktop启动服务报错:(HTTP code 500) server error - ports are not available

Windows 启用 Hyper-V 后,为了保障虚拟网络稳定运行,会随机保留一部分端口。如果服务端口(例如,Redis 的 6379 )正好落在这个保留区间内,Docker 就无权使用,绑定自然就失败了。其他问题同理,修改端口即可。

Alisonyou的博客 161

Windows环境安装Docker Desktop

- 出现问题了,wsl --update 执行好之后,回到docker按重启,提示一样,说wsl需要更新,重新打powershell执行wsl --update,提示wsl已损坏?然后按要求执行升级,一直卡进度,尝试卸载docker后重新执行,wsl --update,又提示更新成功了。--搞了一大轮后发现,安装Docker要系统盘缓存,大概要3-4G以上,腾出空间后再安装就好了,上面的清理都不用做。启动后提示WSL太旧了,打开powershell输入wsl --update ,跟新好之后重启。

weixin_28947667的博客 2023

server error - ports are not available: exposing port TCP 0.0.0.0:11434 -> 127.0.0.1:0: listen tcp 0

winnat服务锁定了 11434 端口的绑定权限,导致 Docker 容器无法占用该端口;命令作用:重启winnat释放端口锁定,让容器能正常绑定 11434 端口;优化方案:长期建议修改容器端口映射(如 11435:11434),避免和winnat抢占端口资源。

m0_57914665的博客 467

docker: Error response from daemon: Ports are not available: listen tcp 0.0.0.0:9090: bind: An attem

Windows10下使用docker部署minio时报错 命令: docker run -p 9090:9000 --name minio -v /mydata/minio/data:/data -v /mydata/minio/config:/root/.minio -d minio/minio server /minioStore --console-address ":9000" --address ":9090" 错误信息: docker: Error response from daemon:

qq_40905896的博客 9082
上一篇: 等待线程池中任务执行完成
deantzzz
博客等级 码龄11年 8粉丝 14原创
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值