Browse Source

alpine: updated Dockerfile to support Github Actions

Sergey Safarov 3 months ago
parent
commit
95e5512505
3 changed files with 29 additions and 11 deletions
  1. 9 1
      alpine/Dockerfile
  2. 7 3
      alpine/Dockerfile.alpine
  3. 13 7
      alpine/Dockerfile.debug

+ 9 - 1
alpine/Dockerfile

@@ -1,5 +1,13 @@
+FROM alpine:latest as wrapper
+
+RUN --mount=type=bind,source=.,target=/mnt set -eux; \
+    apkArch="$(apk --print-arch)"; \
+    echo "Building image for ${apkArch}"; \
+    mkdir -p /tmp/root; \
+    tar xz -C /tmp/root -f /mnt/${apkArch}/kamailio_img.tar.gz
+
 FROM scratch
 
-ADD kamailio_img.tar.gz /
+COPY --from=wrapper /tmp/root /
 
 ENTRYPOINT ["kamailio", "-DD", "-E"]

+ 7 - 3
alpine/Dockerfile.alpine

@@ -1,6 +1,10 @@
-FROM alpine:latest
+ARG IMAGE=alpine:latest
+FROM ${IMAGE}
 LABEL org.opencontainers.image.authors="Sergey Safarov <[email protected]>"
-RUN apk --no-cache upgrade
-ADD kamailio_min-without_os_files.tar.gz /
+
+RUN --mount=type=bind,source=.,target=/mnt set -eux; \
+    apkArch="$(apk --print-arch)"; \
+    apk --no-cache upgrade; \
+    tar xz -C / -f /mnt/${apkArch}/kamailio_img-without_os_files.tar.gz
 
 ENTRYPOINT ["kamailio", "-DD", "-E"]

+ 13 - 7
alpine/Dockerfile.debug

@@ -1,10 +1,16 @@
-FROM alpine:latest
+ARG IMAGE=alpine:latest
+ARG REPO=http://localhost
+FROM ${IMAGE}
+ARG REPO
 LABEL org.opencontainers.image.authors="Sergey Safarov <[email protected]>"
-RUN apk --no-cache upgrade \
-    && apk --no-cache add gawk ca-certificates gdb strace mariadb-client postgresql-client musl-dbg \
-    && apk --no-cache --allow-untrusted --repository http://local-repo search search -qe 'kamailio*' | \
-          xargs apk --no-cache --allow-untrusted --repository http://local-repo add \
-    && mkdir /var/lib/coredump \
-    && echo "kernel.core_pattern=/var/lib/coredump/kamailio-core.%e.%p.%h.%t" > /etc/sysctl.d/00-core.conf
+
+RUN set -eux; \
+    apkArch="$(apk --print-arch)"; \
+    apk --no-cache upgrade; \
+    apk --no-cache add gawk ca-certificates gdb strace mariadb-client postgresql-client musl-dbg; \
+    apk --no-cache --allow-untrusted --repository ${REPO}/${apkArch} search search -qe 'kamailio*' | \
+        xargs apk --no-cache --allow-untrusted --repository ${REPO}/${apkArch} add; \
+    mkdir /var/lib/coredump; \
+    echo "kernel.core_pattern=/var/lib/coredump/kamailio-core.%e.%p.%h.%t" > /etc/sysctl.d/00-core.conf
 
 ENTRYPOINT ["kamailio", "-DD", "-E"]