add mongodb backup
parent
b4dfbae9bf
commit
3f370ed470
|
@ -0,0 +1,16 @@
|
|||
FROM ubuntu:22.04
|
||||
|
||||
LABEL MAINTAINER='beaconfire'
|
||||
|
||||
RUN apt update && apt install -y curl unzip && \
|
||||
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" && \
|
||||
unzip awscliv2.zip && \
|
||||
./aws/install && \
|
||||
curl "https://seethingx-pkg.oss-cn-beijing.aliyuncs.com/mysqldump-8.0.35-glibc2.17-x86_64.tgz" -o "mongodump.tgz" && \
|
||||
tar xf mongodump.tgz -C /usr/local && \
|
||||
rm -rf aws awscliv2.zip mongodump.tgz
|
||||
|
||||
ENV PATH=$PATH:/usr/local/mongodump/bin DATABASES="" HOST="" PORT="" PASSWORD=""
|
||||
COPY entrypoint.sh /usr/local/bin
|
||||
|
||||
CMD [ "/usr/local/bin/entrypoint.sh" ]
|
|
@ -0,0 +1,17 @@
|
|||
#!/bin/bash
|
||||
|
||||
datetime=`date +%Y%m%d%H`
|
||||
|
||||
dbs=($DATABASES)
|
||||
|
||||
for db in "${dbs[@]}"
|
||||
do
|
||||
mongodump --host ${HOST} --port ${PORT} --authenticationDatabase admin -u root -p ${PASSWORD} --db $db --gzip --archive=${db}.tgz
|
||||
if (($?==0));then
|
||||
aws s3 cp ${db}.tgz s3://bfs-pkg-storage/mongodb/backup/${datetime}/
|
||||
else
|
||||
echo "Backup to failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
done
|
Loading…
Reference in New Issue