@furyon

Как делать дампы по cron в Docker?

Здравстувуйте!

Имею: docker-compose, в нем 2 контенера, один c PHP, в другом PostgreSQL.
Нужно: по Cron-у слать дамп постгреса по ftp.

У меня получилось написать bash скрипт для хостовой машины, и слать дампы из нее, но юзать хостовую машину не удобно, хочу чтобы запустил контейнер и он занимался дампами.
Немогу понять как из одного контейнера вызвать pg_dump_all в контенере потсгреса.
Ставить везде ssh неохото/неправильно.

Буду рад любым мыслям!
Спасибо!
  • Вопрос задан
  • 522 просмотра
Пригласить эксперта
Ответы на вопрос 1
Demi44
@Demi44
System administrator, devops
Как вариант
в контейнере с postgres добавляем supervisor + cron, супервайзеру говорим отслеживать cron, cron пускаем через супервайзер с флагом -f, добавляем в crontab команду для бекапа сразу при запуске контейнера через RUN echo или как удобно будет.
Супервайзер будет отслеживать состояние cron и не давать ему упасть, ну а далее все как по намеченному - по расписанию будет пускаться задание на бекап и заливание куда нужно. Такой вариант у меня стоит на одном контейнере где необходимо данные обноввлять.

Втророй вариант слать в контейнер команду через крон на хосте

docker exec -it container_name /path/to/backup_scipt.sh

Тут нужно в контейнере хранить скрипт который будет делать все что вам необходимо.

Оба варианта нужно тестить.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы