有这样一个命令可以将 postgres 基础的转储从 docker 拉到主机上。
#!/bin/bash
docker exec db pg_dump -U postgres -Fc -v -d postgres | gzip -9 > /path/to/backup-$(date +%Y-%m-%d).dump.gz
它是从 crontab 执行的
1 0 * * * /path/to/dump.sh >> /var/log/cron_backup.log
结果,cron_backup.log没有任何记录。你还能如何将执行记录pg_dump到文件中?
pg_dump将其日志写入 stderr,并使用您运行的选项,将转储输出到 stdout,并且它完全属于 gzip 输入。所以你需要重定向stderr,而不是stdout: