kopia lustrzana https://github.com/Ovski4/docker-borgbackup-cron
38 wiersze
978 B
Docker
38 wiersze
978 B
Docker
FROM ovski/ansible:v2.7.8
|
|
|
|
# Clone ansible playbooks
|
|
RUN git clone https://gitlab.com/ovski-projects/infra/ansible-playbooks/borg-backup.git /var/borg-backup-playbook
|
|
RUN git clone https://gitlab.com/ovski-projects/infra/ansible-playbooks/mysql-dump.git /var/mysql-dump-playbook
|
|
|
|
# Install borg
|
|
RUN apt-get install -y \
|
|
python3 \
|
|
python3-dev \
|
|
python3-pip \
|
|
python-virtualenv \
|
|
libssl-dev openssl \
|
|
libacl1-dev libacl1 \
|
|
build-essential \
|
|
borgbackup
|
|
|
|
# Install packages for mysqldump
|
|
RUN apt-get install -y mysql-client
|
|
RUN pip3 install PyMySql
|
|
|
|
# Install cron
|
|
RUN apt-get install -y cron
|
|
|
|
COPY backup_script.sh /var/backup_script.sh
|
|
RUN chmod +x /var/backup_script.sh
|
|
|
|
COPY borgbackup_cron /etc/cron.d/borgbackup_cron
|
|
RUN chmod +x /etc/cron.d/borgbackup_cron
|
|
RUN crontab /etc/cron.d/borgbackup_cron
|
|
|
|
# Setup entrypoint
|
|
COPY entrypoint.sh /var/entrypoint.sh
|
|
RUN chmod +x /var/entrypoint.sh
|
|
ENTRYPOINT [ "/var/entrypoint.sh" ]
|
|
|
|
CMD ["cron", "-f"]
|