Commit 0c0b5d60 authored by Pedro Eduardo Trujillo's avatar Pedro Eduardo Trujillo
Browse files

Merge branch 'dev' into 'master'

Corrige imagen por defecto, revisa variables

See merge request redmic-project/postgres/backup-postgresql!13
parents 07ef75e0 f6f6a644
Loading
Loading
Loading
Loading
+8 −12
Original line number Diff line number Diff line
@@ -4,18 +4,17 @@ FROM alpine:${ALPINE_IMAGE_TAG}

LABEL maintainer="info@redmic.es"

ENV POSTGRES_PORT="5432" \
	POSTGRES_PASS_FILE="/root/.pgpass" \
	POSTGRES_DUMP_PATH="/tmp/backup" \
	AWS_DEFAULT_REGION="eu-west-1" \
	PUSHGATEWAY_HOST="pushgateway:9091" \
	AWS_OUTPUT="json"
ENV POSTGRES_USER=postgres \
	POSTGRES_PORT=5432 \
	POSTGRES_DUMP_PATH=/tmp/backup \
	POSTGRES_PASS_FILE=/root/.pgpass \
	AWS_DEFAULT_REGION=eu-west-1 \
	PUSHGATEWAY_HOST=pushgateway:9091 \
	AWS_OUTPUT=json

COPY scripts /

ARG POSTGRES_PASS_FILE="/root/.pgpass" \
	POSTGRES_DUMP_PATH="/tmp/backup" \
	CURL_VERSION=7.74.0-r1 \
ARG CURL_VERSION=7.74.0-r1 \
	POSTGRESQL_CLIENT_VERSION=13.2-r0 \
	BASH_VERSION=5.1.0-r0

@@ -32,9 +31,6 @@ RUN apk update && \
ARG GLIBC_VERSION=2.33-r0 \
	AWS_CLI_VERSION=2.0.30

ENV GLIBC_VERSION=${GLIBC_VERSION} \
	AWS_CLI_VERSION=${AWS_CLI_VERSION}

# hadolint ignore=DL3018
RUN curl -sL https://alpine-pkgs.sgerrand.com/sgerrand.rsa.pub -o /etc/apk/keys/sgerrand.rsa.pub && \
	curl -sL "https://github.com/sgerrand/alpine-pkg-glibc/releases/download/${GLIBC_VERSION}/glibc-${GLIBC_VERSION}.apk" -o glibc.apk && \
+28 −13
Original line number Diff line number Diff line
@@ -5,21 +5,36 @@ Also sends metrics to Prometheus through Pushgateway.

![alt schema-db](images/schema-backup-db.png)

## Build arguments

|          Name             |              Description             |
|---------------------------|--------------------------------------|
| ALPINE_IMAGE_TAG          | Base Docker image tag                |
| CURL_VERSION              | cURL dependency version              |
| POSTGRESQL_CLIENT_VERSION | PostgreSQL-client dependency version |
| BASH_VERSION              | Bash dependency version              |
| GLIBC_VERSION             | glibc dependency version             |
| AWS_CLI_VERSION           | AWS (cli v2) dependency version      |

## Variables

|          Name         |          Description            |        Default       |
|-----------------------|-------------------------------|-------------------|
|-----------------------|---------------------------------|----------------------|
| POSTGRES_USER         | Database username               | postgres             |
| POSTGRES_PASSWORD     | Database password             | password          |
| POSTGRES_HOSTNAME     | Database hostname             | postgresql        |
| POSTGRES_PASSWORD     | Database password               | changeme             |
| POSTGRES_HOSTNAME     | Database hostname               | changeme             |
| POSTGRES_PORT         | Database port                   | 5432                 |
| POSTGRES_DUMP_PATH    | Temporal path                   | /tmp/backup          |
| BUCKET_BACKUP_DB      | Bucket name for upload backup |                   |
| AWS_ACCESS_KEY_ID     | Credentials AWS               |                   |
| AWS_SECRET_ACCESS_KEY | Credentials AWS               |                   |
| AWS_DEFAULT_REGION    | Region AWS                    | eu-west-1         |
| PUSHGATEWAY_HOST      | PushGateWay hostname          | pushgateway:9091  |
| PUSHGATEWAY_JOB       | PushGateWay job name          | POSTGRES_HOSTNAME |
| GZIP                  | Compression ratio             | -9                |
| POSTGRES_PASS_FILE    | PG credentials file path        | /root/.pgpass        |
| DUMP_FILENAME         | File name for uploads           | db.dump              |
| BUCKET_BACKUP_DB      | Bucket name for uploads         | backup-db            |
| UPLOAD_ENDPOINT_URL   | URL for uploads (S3-compatible) |                      |
| AWS_ACCESS_KEY_ID     | AWS credentials                 | changeme             |
| AWS_SECRET_ACCESS_KEY | AWS credentials                 | changeme             |
| AWS_DEFAULT_REGION    | AWS region                      | eu-west-1            |
| AWS_OUTPUT            | AWS output format               | json                 |
| PUSHGATEWAY_HOST      | Pushgateway hostname            | pushgateway:9091     |
| PUSHGATEWAY_JOB       | Pushgateway job name            | ${POSTGRES_HOSTNAME} |

## Metrics

+0 −3
Original line number Diff line number Diff line
ALPINE_IMAGE_TAG=3.13
POSTGRES_PASS_FILE=/root/.pgpass
POSTGRES_DUMP_PATH=/tmp/backup
CURL_VERSION=7.74.0-r1
POSTGRESQL_CLIENT_VERSION=13.2-r0
BASH_VERSION=5.1.0-r0
@@ -19,4 +17,3 @@ BUCKET_BACKUP_DB=backup-db
AWS_OUTPUT=json

PUSHGATEWAY_HOST=pushgateway:9091
PUSHGATEWAY_JOB=changeme
+5 −4
Original line number Diff line number Diff line
@@ -2,14 +2,12 @@ version: '3.5'

services:
  backup-postgresql:
    image: ${BACKUP_POSTGRESQL_IMAGE_NAME:-registry.gitlab.com/redmic-project/postgres/backup-db}:${BACKUP_POSTGRESQL_IMAGE_TAG:-latest}
    image: ${BACKUP_POSTGRESQL_IMAGE_NAME:-registry.gitlab.com/redmic-project/postgres/backup-postgresql}:${BACKUP_POSTGRESQL_IMAGE_TAG:-latest}
    build:
      context: ..
      dockerfile: ${BACKUP_POSTGRESQL_DOCKERFILE:-Dockerfile}
      args:
        ALPINE_IMAGE_TAG:
        POSTGRES_PASS_FILE:
        POSTGRES_DUMP_PATH:
        CURL_VERSION:
        POSTGRESQL_CLIENT_VERSION:
        BASH_VERSION:
@@ -20,12 +18,15 @@ services:
      POSTGRES_PASSWORD:
      POSTGRES_HOSTNAME:
      POSTGRES_PORT:
      POSTGRES_DUMP_PATH:
      POSTGRES_PASS_FILE:
      DUMP_FILENAME:
      BUCKET_BACKUP_DB:
      UPLOAD_ENDPOINT_URL:
      AWS_ACCESS_KEY_ID:
      AWS_SECRET_ACCESS_KEY:
      AWS_DEFAULT_REGION:
      AWS_OUTPUT:
      UPLOAD_ENDPOINT_URL:
      PUSHGATEWAY_HOST:
      PUSHGATEWAY_JOB:
    networks: