一尘不染

在bash文件中运行docker命令并使用crontab运行

docker

#!/bin/bash

docker exec -ti erpnext sh -c "cd /home/frappe/frappe-bench/ &&
/usr/local/bin/bench backup"

echo 'Hello, world.' >foo.txt

上面的代码是我的bash文件。这里有两个命令

  1. 创建txt文件
  2. 执行Docker容器

如果我运行此命令

cd /home/arifur/workspace_python/erpdatabasebackup && bash backup_database.sh

在终端然后它正在工作

但是当我在crontab中运行时

* * * * * cd /home/arifur/workspace_python/erpdatabasebackup && bash backup_database.sh

那么只有txt文件创建有效,而docker容器无效。


阅读 472

收藏
2020-06-17

共1个答案

一尘不染

-ti使用伪tty并以交互方式运行的请求,但是cron不会附加到任何TTY。尝试删除-ti

docker exec erpnext sh -c "cd /home/frappe/frappe-bench/ && /usr/local/bin/bench backup"
2020-06-17