加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

从crontab运行“docker run”

发布时间:2020-12-16 03:48:29 所属栏目:安全 来源:网络整理
导读:我尝试从docker容器内运行的postgresql数据库进行自动化(每晚4点)备份. #!/bin/shCONTAINER=`docker ps|grep name_of_container|awk '{print $1}'`USER='postgre_user'PASSWORD='changed'BUDIR='/some/path/backup/'docker run -it --link $CONTAINER:db -v

我尝试从docker容器内运行的postgresql数据库进行自动化(每晚4点)备份.

#!/bin/sh

CONTAINER=`docker ps|grep name_of_container|awk '{print $1}'`
USER='postgre_user'
PASSWORD='changed'
BUDIR='/some/path/backup/'

docker run -it --link $CONTAINER:db -v $BUDIR:/backup/ -e "PGPASSWORD=$PASSWORD" pg_dump -h db -U $USER -Fc -f /backup/$(date +%Y-%m-%d-%H-%M-%S).dump

我的crontab看起来像这样:

0 4 * * * /path/to/script.sh

当我手动执行它时脚本工作正常,它也从cron执行(我试过* * * * *进行调试).

我无法弄清楚如何让cron和脚本一起工作.到目前为止我试过:

>将变量写入日志文件
>检查来自crontab的输出(* * * * * […]&> cron.log)
>检查来自docker exec […]>的输出脚本中的output.log

从cron运行时,$CONTAINER包含正确的docker id,cron.log和output.log已创建但为空.

有任何想法吗?

最佳答案
从cron运行时无法使用docker run -it –link […] – 我现在使用docker run –link […].

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读