创建容器命令如下:

docker run -it -p 8000:8000 -p 8082:8082 -p 3000:3000 -p 3306:3306 --name seafile-dev-img -v /Users/wysdu/Documents/seafile-develop:/root/dev/source-code ubuntu:18.04  bash

docker: Error response from daemon: driver failed programming external connectivity on endpoint seafile-dev-img
(5d88ccc1089eff8b2ff24fb9cc25f5f4e940837a440d95b469d2913150df1c52):
Error starting userland proxy: listen tcp 0.0.0.0:3306: bind: address already in use.

查看占用端口3306的进程

sudo lsof -i tcp:3306               

结果如下:

COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
mysqld 102 _mysql 27u IPv6 0x2135a76727b4822b 0t0 TCP *:mysql (LISTEN)

可以看到, mac 开机后mysql自动启动占用了TCP端口3306,从而造成上面的错误。
进入 系统偏好设置 关闭MySQL服务即可。

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐