-
Notifications
You must be signed in to change notification settings - Fork 126
Expand file tree
/
Copy pathDockerfile.template
More file actions
47 lines (38 loc) · 989 Bytes
/
Dockerfile.template
File metadata and controls
47 lines (38 loc) · 989 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
FROM {{ .from }}
RUN sed -i 's/$/ {{ .old }}/' /etc/apt/sources.list.d/pgdg.list
RUN set -eux; \
apt-get install --update -y --no-install-recommends \
postgresql-{{ .old }}={{ .version | @sh }} \
; \
apt-get dist-clean
ENV PGBINOLD /usr/lib/postgresql/{{ .old }}/bin
ENV PGBINNEW /usr/lib/postgresql/{{ .new }}/bin
RUN set -eux; \
"$PGBINOLD/postgres" --version; \
"$PGBINNEW/postgres" --version
{{
def dir($ver):
"/var/lib/postgresql/\($ver)/\(
# TODO swap 100% from /data to /docker (https://github.com/docker-library/postgres/pull/1259)
if IN($ver; "13", "14", "15", "16", "17") then
"data"
else
"docker"
end
)"
-}}
ENV PGDATAOLD {{ dir(.old) }}
ENV PGDATANEW {{ dir(.new) }}
RUN install \
--verbose \
--owner postgres \
--group postgres \
--mode 1777 \
--directory \
"$PGDATAOLD" \
"$PGDATANEW"
WORKDIR /var/lib/postgresql
COPY docker-upgrade /usr/local/bin/
ENTRYPOINT ["docker-upgrade"]
# recommended: --link
CMD ["pg_upgrade"]