win10下docker容器时提示端口不可用解决方法

文章目录

      • 问题
      • 解决方法

问题

最近用得好好的mysql容器启动不了,报了下面的错。
win10下docker容器时提示端口不可用解决方法_第1张图片
是的,报这个错误:ERROR: for mysql_redis_mysql5.7_1 Cannot start service mysql5.7: Ports are not available: listen tcp 0.0.0.0:3306: bind: An attempt was made to access a socket in a way forbidden by its access permissions.

查看下启动后的保留端口范围:

PS C:\> netsh interface ipv4 show excludedportrange protocol=tcp
协议 tcp 端口排除范围

开始端口    结束端口
----------    --------
      3109        3208
      3209        3308
      3309        3408
      3778        3877
      3878        3977
      3978        4077
     50000       50059     *

* - 管理的端口排除。

解决方法

以管理身份打开powershell

Windows PowerShell
版权所有 (C) Microsoft Corporation。保留所有权利。

尝试新的跨平台 PowerShell https://aka.ms/pscore6

PS C:\WINDOWS\system32> net stop winnat

Windows NAT Driver 服务已成功停止。

PS C:\WINDOWS\system32> net start winnat

Windows NAT Driver 服务已经启动成功。

重新试试看,能否启动容器:

PS D:\docker_com\mysql_redis> docker-compose up -d
mysql_redis_redis_1 is up-to-date
Starting mysql_redis_mysql5.7_1 ... done

ok,可以了。

你可能感兴趣的:(docker,docker,容器,运维)