在Docker容器中执行cron内的服务时遇到的问题?

时间:2014-03-20 22:31:45

标签: linux shell cron sh docker

我有一些cronjobs,我一直使用和工作正常。但现在,尝试将所有内容移至Docker个容器,我遇到了这些错误:

/usr/bin/service: 127: /usr/bin/service: stop: not found
/usr/bin/service: 128: exec: start: not found

在执行"service restart nginx"这些cronjobs之类的事情时会发生这种情况。请注意,相同的命令在cronjobs之外工作正常。

PATH在/etc/crontab中正确设置。将其添加到/etc/cron.d中的各个cron文件中也不起作用。我也尝试在SHELL=/bin/sh中将SHELL=/bin/bash更改为/etc/crontab(即使它不安全,但想尝试),但是没有效果。

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

我解决了从

更改命令的问题
"service start mysql"

"/sbin/start mysql &"
祝你好运

安瑞科

答案 1 :(得分:0)

我不确定,但我认为问题出在路径上。我相信你想要/usr/sbin/service而不是/usr/bin/service。您可以尝试指定服务的完整路径,而不仅仅是service