要使用飞牛虚拟机的话必须在网络设置中启用OVS,此时新建docker容器是可以正常运行的,如果飞牛重启的话,就会导致某些docker容器无法访问外网,重启容器后恢复正常,总不能每次重启后再手动重启一遍容器吧
目前发现的有clouddrive(CD2),Openlist,qbittorrent,其他的没注意(应该跟用host还是bridge没啥关系)
CD2表现为无法打开或刷新挂载网盘中的内容,打开挂载的115网盘和百度网盘提示dns error,阿里云盘提示refresh token error。。。
Openlist表现为无法打开挂载的网盘,进去就是一行错误
qbittorrent表现为tracker连不上,无法下载
在坛内翻了几遍,遇到这个问题的人不少,但是没找到个具体的解决办法,飞牛官方也早就知道这个问题,一直也没解决
既然在启用OVS后新建的docker容器完全正常,那在飞牛启动的时候让docker服务延时启动,让其他必需的服务先运行起来应该就能解决,然而我也不知道这个服务到底是啥,干脆就让整个docker服务延时启动,试了一下还真行
既然思路有了,就该deepseek上场了:
修改 Docker 的 systemd 配置
sudo mkdir -p /etc/systemd/system/docker.service.d/
sudo nano /etc/systemd/system/docker.service.d/startup-delay.conf
在上面创建的配置文件 startup-delay.conf
中,添加以下内容:
[Service]
ExecStartPre=/bin/sleep 60
这里的 /bin/sleep 60
表示让 Docker 服务的启动预先等待 60 秒。你可以根据实际需要调整这个秒数,我这边改成30也没问题
保存之后重新加载 systemd 配置并重启 Docker
让 systemd 识别新的配置片段,然后重启 Docker 服务以使更改生效
sudo systemctl daemon-reload
sudo systemctl restart docker
或者保存后直接重启飞牛,docker容器应该就一切正常了,虚拟机也能跑了
先凑合用着吧,好在没有直接修改Docker的原始服务文件,没啥风险。等飞牛官方修复了,去把上面新建的目录删了就行。