|
1 | | -FROM debian:bullseye-slim |
2 | | -LABEL org.opencontainers.image.source https://github.com/kiwix/borg-backup |
| 1 | +FROM debian:bookworm-slim |
| 2 | +LABEL org.opencontainers.image.source=https://github.com/kiwix/borg-backup |
3 | 3 | # |
4 | 4 | # Author : Florent Kaisser <florent.pro@kaisser.name> |
5 | 5 | # |
@@ -31,37 +31,41 @@ ENV DATABASES_OPTIONS="" |
31 | 31 | ENV MAX_BORGMATIC_RETRY="10" |
32 | 32 | ENV WAIT_BEFORE_BORGMATIC_RETRY="30" |
33 | 33 | # for k8s cluster data backup |
34 | | -ARG KUBECTL_VERSION="1.23.3" |
| 34 | +ARG KUBECTL_VERSION="1.34.2" |
35 | 35 |
|
36 | 36 | RUN apt-get update && \ |
37 | 37 | apt-get install -y --no-install-recommends bash curl borgbackup vim \ |
38 | 38 | python3 python3-pip python3-setuptools openssh-client unzip git cron \ |
39 | | - default-mysql-client \ |
40 | | - dnsutils bind9utils tar xz-utils gzip bzip2 coreutils grep lsb-release gnupg2 && \ |
41 | | - # install postgresql-18 \ |
42 | | - echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main 18" > /etc/apt/sources.list.d/pgdg.list && \ |
43 | | - curl -Ls https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add - && \ |
| 39 | + default-mysql-client ca-certificates \ |
| 40 | + dnsutils bind9utils tar xz-utils gzip bzip2 coreutils grep lsb-release gnupg2 \ |
| 41 | + python3.11-venv && \ |
| 42 | + install -d /usr/share/postgresql-common/pgdg && \ |
| 43 | + curl -o /usr/share/postgresql-common/pgdg/apt.postgresql.org.asc --fail https://www.postgresql.org/media/keys/ACCC4CF8.asc && \ |
| 44 | + . /etc/os-release && \ |
| 45 | + sh -c "echo 'deb [signed-by=/usr/share/postgresql-common/pgdg/apt.postgresql.org.asc] https://apt.postgresql.org/pub/repos/apt $VERSION_CODENAME-pgdg main' > /etc/apt/sources.list.d/pgdg.list" && \ |
44 | 46 | apt-get update && \ |
45 | 47 | apt-get install -y --no-install-recommends -y postgresql-client-18 && \ |
46 | | - curl -Ls https://fastdl.mongodb.org/tools/db/mongodb-database-tools-debian10-x86_64-100.5.2.deb -o mongo-tools.deb && \ |
| 48 | + curl -Ls https://fastdl.mongodb.org/tools/db/mongodb-database-tools-debian12-x86_64-100.14.1.deb -o mongo-tools.deb && \ |
47 | 49 | apt-get install -y --no-install-recommends -y ./mongo-tools.deb && \ |
48 | 50 | rm -f ./mongo-tools.deb && \ |
49 | 51 | apt-get clean -y && \ |
50 | 52 | rm -rf /var/lib/apt/lists/* && \ |
51 | | - curl -Ls 'https://github.com/bitwarden/cli/releases/download/v1.19.1/bw-linux-1.19.1.zip' -o bitwarden.zip && \ |
| 53 | + curl -Ls 'https://github.com/bitwarden/cli/releases/download/v1.22.1/bw-linux-1.22.1.zip' -o bitwarden.zip && \ |
52 | 54 | unzip bitwarden.zip && rm -f bitwarden.zip && chmod +x bw && mv bw /usr/local/bin/ && \ |
| 55 | + python3.11 -m venv /app/kiwix-python && \ |
| 56 | + . /app/kiwix-python/bin/activate && \ |
53 | 57 | git clone --depth=1 --branch=master https://github.com/borgbase/borgbase-api-client.git && \ |
54 | | - mv borgbase-api-client/borgbase_api_client/ /usr/lib/python3/dist-packages/ && \ |
| 58 | + mv borgbase-api-client/borgbase_api_client/ /app/kiwix-python/lib/python3.11/site-packages/ && \ |
55 | 59 | rm -rf borgbase-api-client && \ |
56 | | - pip3 install --no-cache-dir --upgrade requests==2.27.1 borgmatic==1.5.24 jsonschema==4.4.0 pyrsistent==0.18.1 && \ |
57 | | - curl -sLo /usr/bin/jq "https://github.com/stedolan/jq/releases/download/jq-1.6/jq-linux64" && \ |
| 60 | + pip3 install --no-cache-dir --upgrade requests==2.27.1 borgmatic==1.5.24 jsonschema==4.4.0 pyrsistent==0.18.1 && \ |
| 61 | + curl -sLo /usr/bin/jq "https://github.com/jqlang/jq/releases/download/jq-1.8.1/jq-linux64" && \ |
58 | 62 | chmod +x /usr/bin/jq && \ |
59 | | - curl -sLo /usr/bin/yq "https://github.com/mikefarah/yq/releases/download/v4.20.2/yq_linux_amd64" && \ |
| 63 | + curl -sLo /usr/bin/yq "https://github.com/mikefarah/yq/releases/download/v4.52.4/yq_linux_amd64" && \ |
60 | 64 | chmod +x /usr/bin/yq && \ |
61 | 65 | curl -sLo /usr/bin/kubectl \ |
62 | 66 | "https://storage.googleapis.com/kubernetes-release/release/v$KUBECTL_VERSION/bin/linux/amd64/kubectl" && \ |
63 | 67 | chmod +x /usr/bin/kubectl && \ |
64 | | - curl -sLo /usr/bin/kube-dump "https://raw.githubusercontent.com/WoozyMasta/kube-dump/1.1.1/kube-dump" && \ |
| 68 | + curl -sLo /usr/bin/kube-dump "https://raw.githubusercontent.com/WoozyMasta/kube-dump/1.1.2/kube-dump" && \ |
65 | 69 | chmod +x /usr/bin/kube-dump |
66 | 70 |
|
67 | 71 | # Entrypoint for k8s mode |
|
0 commit comments