请问如何让docker服务延时启动或者重启?


Recommended Posts

我的软路由openwrt是安装在unraid的vm里,每次开机后docker就只能获取到ipv4的地址,无法获取到ipv6,需要在设置里开关docker一次才能获取到ipv6(重启容器也获取不到),我猜测可能是docker服务启动时openwrt的ipv6还未获取成功,docker就关闭了ipv6功能,所以请问有没有什么办法能让docker服务延时启动?或者有没有什么命令能让docker restart一次

Link to comment
  • 2 months later...

取消  docker 的自动启动,,估算  虚拟机启动时间 比如 5分钟

添加自动任务  阵列启动后执行

 

#!/bin/bash

sleep 5m

docker start EmbyServer
docker start XXXX

要按照需要  延迟启动(取消自动启动) 的名字,区分大小写。

Link to comment
8 hours ago, 淡淡忧伤 said:

取消  docker 的自动启动,,估算  虚拟机启动时间 比如 5分钟

添加自动任务  阵列启动后执行

 

#!/bin/bash

sleep 5m

docker start EmbyServer
docker start XXXX

要按照需要  延迟启动(取消自动启动) 的名字,区分大小写。

 

On 7/27/2022 at 5:16 AM, leverule said:

image.png.cec7317a1842f6459d5a9ff08eb2e401.png原来这里有设置延迟按钮

 

On 7/27/2022 at 5:08 AM, leverule said:

请问有办法了吗,我也是all in one,路由没启动前,docker获取不到图标...

 

这个延时只是延时启动docker容器,并不能解决无法获取ipv6的问题,这个情况下似乎整个unraid网络都没有ipv6,只能重启unraid网络服务、docker服务才行,我目前暂时通过以下方法解决了这个问题:在User Scripts里添加 At First Array Start Only 脚本,内容如下

#!/bin/bash
echo "sleep 1m"
sleep 1m
is_docker_running=$(/etc/rc.d/rc.docker status | awk 'NR == 1 {print} ' | grep running)
echo $is_docker_running
if [ ! -z "$is_docker_running" ]; then
	/etc/rc.d/rc.inet1 restart
	/etc/rc.d/rc.docker restart
	echo "docker restart"
fi

阵列启动后延时1分钟(这个时候软路由已经获取到了IPV6)重启inet、docker服务。但是这个方法也不太完美,所有自启动的容器会被启动两次。

Link to comment
11 hours ago, liziwa said:

 

 

 

这个延时只是延时启动docker容器,并不能解决无法获取ipv6的问题,这个情况下似乎整个unraid网络都没有ipv6,只能重启unraid网络服务、docker服务才行,我目前暂时通过以下方法解决了这个问题:在User Scripts里添加 At First Array Start Only 脚本,内容如下

#!/bin/bash
echo "sleep 1m"
sleep 1m
is_docker_running=$(/etc/rc.d/rc.docker status | awk 'NR == 1 {print} ' | grep running)
echo $is_docker_running
if [ ! -z "$is_docker_running" ]; then
	/etc/rc.d/rc.inet1 restart
	/etc/rc.d/rc.docker restart
	echo "docker restart"
fi

阵列启动后延时1分钟(这个时候软路由已经获取到了IPV6)重启inet、docker服务。但是这个方法也不太完美,所有自启动的容器会被启动两次。

哦哦,没注意看你的需求。以为跟我类似,

我是 VM 群晖。。。然后 mount 群晖的目录,,

要等待  群晖启动后,,执行挂载命令,,然后  启动容器。。

 

你说的 ,自启动容易,启动两次,就可以,,把自启动关闭,,然后把  启动容器的命令,跟在你上面的最后不就行了。。。

 

关闭自启动,,把启动容器命令加在你刚刚的    User Scripts  脚本后面。 不就只启动一次了???

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.