@furyon

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

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

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

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

Буду рад любым мыслям!
Спасибо!
  • Вопрос задан
  • 498 просмотров
Пригласить эксперта
Ответы на вопрос 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

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

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

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

Войти через центр авторизации
Похожие вопросы