This commit is contained in:
@@ -0,0 +1,13 @@
|
|||||||
|
FROM alpine:3.6
|
||||||
|
|
||||||
|
RUN apk add --no-cache --upgrade bash mongodb-tools
|
||||||
|
|
||||||
|
# copy crontabs for root user
|
||||||
|
COPY crontab /etc/crontabs/root
|
||||||
|
|
||||||
|
# copy backup script
|
||||||
|
COPY backup /myscripts/backup
|
||||||
|
RUN chmod 0744 /myscripts/backup
|
||||||
|
|
||||||
|
# start crond with log level 8 in foreground, output to stderr
|
||||||
|
CMD ["crond", "-f", "-d", "8"]
|
||||||
Executable
+13
@@ -0,0 +1,13 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
DATE=`date +"%Y-%m-%d_%H:%M"`
|
||||||
|
|
||||||
|
echo "Generating backup $DATE"
|
||||||
|
|
||||||
|
mongodump --host fdn2.production.database -d fdn2 --port 27017 --out "/backups/mongodump-$DATE"
|
||||||
|
|
||||||
|
for old in `ls -t /backups | tail -n +7`; do
|
||||||
|
TOREMOVE="/backups/$old"
|
||||||
|
echo "Removing '$TOREMOVE'";
|
||||||
|
rm -r $TOREMOVE
|
||||||
|
done
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
4 0 * * * /myscripts/backup 2>&1
|
||||||
@@ -0,0 +1,17 @@
|
|||||||
|
version: "3"
|
||||||
|
services:
|
||||||
|
backup:
|
||||||
|
image: cronjob
|
||||||
|
build: ./
|
||||||
|
networks:
|
||||||
|
- backup-network
|
||||||
|
restart: "unless-stopped"
|
||||||
|
volumes:
|
||||||
|
- /home/ddninja/fdn2/backups:/backups
|
||||||
|
|
||||||
|
|
||||||
|
networks:
|
||||||
|
backup-network:
|
||||||
|
external: true
|
||||||
|
name:
|
||||||
|
backup-network
|
||||||
@@ -5,6 +5,9 @@ services:
|
|||||||
restart: "on-failure:5"
|
restart: "on-failure:5"
|
||||||
networks:
|
networks:
|
||||||
db-network:
|
db-network:
|
||||||
|
backup-network:
|
||||||
|
aliases:
|
||||||
|
- §PROJECT_BUILDNAME§.§ENVIRONMENT_TYPE§.database
|
||||||
volumes:
|
volumes:
|
||||||
- ./persistence/database/mongodb:/data/db/
|
- ./persistence/database/mongodb:/data/db/
|
||||||
logging:
|
logging:
|
||||||
@@ -75,6 +78,10 @@ services:
|
|||||||
networks:
|
networks:
|
||||||
db-network:
|
db-network:
|
||||||
§PROJECT_BUILDNAME§-network:
|
§PROJECT_BUILDNAME§-network:
|
||||||
|
backup-network:
|
||||||
|
external: true
|
||||||
|
name:
|
||||||
|
backup-network
|
||||||
nginx-network:
|
nginx-network:
|
||||||
external: true
|
external: true
|
||||||
name:
|
name:
|
||||||
|
|||||||
@@ -5,8 +5,9 @@ services:
|
|||||||
restart: "no"
|
restart: "no"
|
||||||
networks:
|
networks:
|
||||||
db-network:
|
db-network:
|
||||||
|
backup-network:
|
||||||
aliases:
|
aliases:
|
||||||
- §PROJECT_BUILDNAME§.§ENVIRONMENT_TYPE§.database
|
- §PROJECT_BUILDNAME§.local.database
|
||||||
volumes:
|
volumes:
|
||||||
- §PROJECT_BUILDNAME§-db-persist:/data/db/
|
- §PROJECT_BUILDNAME§-db-persist:/data/db/
|
||||||
webserver:
|
webserver:
|
||||||
@@ -53,6 +54,10 @@ services:
|
|||||||
networks:
|
networks:
|
||||||
db-network:
|
db-network:
|
||||||
§PROJECT_BUILDNAME§-network:
|
§PROJECT_BUILDNAME§-network:
|
||||||
|
backup-network:
|
||||||
|
external: true
|
||||||
|
name:
|
||||||
|
backup-network
|
||||||
|
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
|
|||||||
Reference in New Issue
Block a user