mirror of
https://github.com/ditkrg/db-backup-s3.git
synced 2026-01-22 22:06:45 +00:00
57 lines
1.6 KiB
Docker
57 lines
1.6 KiB
Docker
ARG ALPINE_VERSION=3.21
|
|
|
|
FROM alpine:${ALPINE_VERSION}
|
|
|
|
WORKDIR /
|
|
|
|
# Install tools for PostgreSQL, MariaDB, and AWS CLI
|
|
RUN apk update && \
|
|
apk add --no-cache \
|
|
gnupg \
|
|
aws-cli \
|
|
postgresql-client \
|
|
mysql-client mariadb-connector-c \
|
|
curl
|
|
|
|
# Install MSSQL tools (sqlcmd) for Microsoft SQL Server on Alpine
|
|
# Source: https://learn.microsoft.com/en-us/sql/linux/sql-server-linux-setup-tools
|
|
RUN curl -O https://download.microsoft.com/download/b/9/f/b9f3cce4-3925-46d4-9f46-da08869c6486/msodbcsql18_18.1.1.1-1_amd64.apk && \
|
|
curl -O https://download.microsoft.com/download/b/9/f/b9f3cce4-3925-46d4-9f46-da08869c6486/mssql-tools18_18.1.1.1-1_amd64.apk && \
|
|
apk add --allow-untrusted msodbcsql18_18.1.1.1-1_amd64.apk && \
|
|
apk add --allow-untrusted mssql-tools18_18.1.1.1-1_amd64.apk && \
|
|
rm msodbcsql18_18.1.1.1-1_amd64.apk mssql-tools18_18.1.1.1-1_amd64.apk
|
|
|
|
RUN rm -rf /var/cache/apk/*
|
|
|
|
ENV PATH="${PATH}:/opt/mssql-tools18/bin"
|
|
|
|
ENV DATABASE_NAME ''
|
|
ENV DATABASE_HOST ''
|
|
ENV DATABASE_PORT ''
|
|
ENV DATABASE_USER ''
|
|
ENV DATABASE_SERVER ''
|
|
ENV DATABASE_PASSWORD ''
|
|
ENV PGDUMP_EXTRA_OPTS ''
|
|
ENV MARIADB_DUMP_EXTRA_OPTS ''
|
|
ENV MARIADB_EXTRA_OPTS ''
|
|
ENV MSSQL_EXTRA_OPTS ''
|
|
ENV MSSQL_BACKUP_DIR '/var/opt/mssql/data'
|
|
ENV S3_ACCESS_KEY_ID ''
|
|
ENV S3_SECRET_ACCESS_KEY ''
|
|
ENV S3_BUCKET ''
|
|
ENV S3_REGION 'us-west-1'
|
|
ENV S3_PATH 'backup'
|
|
ENV S3_ENDPOINT ''
|
|
ENV S3_S3V4 'no'
|
|
ENV SCHEDULE ''
|
|
ENV PASSPHRASE ''
|
|
ENV BACKUP_KEEP_DAYS ''
|
|
|
|
ADD src/run.sh run.sh
|
|
ADD src/env.sh env.sh
|
|
ADD src/backup.sh backup.sh
|
|
ADD src/helpers.sh helpers.sh
|
|
ADD src/restore.sh restore.sh
|
|
|
|
CMD ["sh", "run.sh"]
|