Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(Alpine,rhel): reinstate alpine and rhel Dockerfiles #713

Merged
merged 6 commits into from
Jun 27, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 9 additions & 13 deletions Dockerfile.apk
Original file line number Diff line number Diff line change
@@ -1,34 +1,29 @@
FROM alpine:3.18

ARG KONG_VERSION=2.8.4
ARG KONG_VERSION=2.8.5
ENV KONG_VERSION $KONG_VERSION

ARG KONG_AMD64_SHA="930b3b933b6c3f0393700433a919745900485d19e0cd8aba2d70aa066ccd10d2"
ARG KONG_ARM64_SHA="9027da2a4df477b462f34da9450412012ffdc0f9019e33ed7ff8e88f3df062c6"
ARG KONG_AMD64_SHA="22a5cd7c981ec15b34db105aabac7815bd589380a8d27d0c9e138657a9da6332"

ARG KONG_PREFIX=/usr/local/kong
ENV KONG_PREFIX $KONG_PREFIX

ARG ASSET=remote
ARG EE_PORTS

COPY kong.apk.tar.gz /tmp/kong.apk.tar.gz
COPY kong.tar.gz /tmp/kong.tar.gz

RUN set -ex; \
arch="$(apk --print-arch)"; \
major_minor="$(echo "${KONG_VERSION%.*}" | tr -d '.')"; \
case "${arch}" in \
x86_64) KONG_SHA256=$KONG_AMD64_SHA ;; \
aarch64) KONG_SHA256=$KONG_ARM64_SHA ;; \
esac; \
KONG_SHA256=$KONG_AMD64_SHA ; \
apk add bash curl ca-certificates; \
if [ "$ASSET" = "remote" ] ; then \
curl -fL "https://packages.konghq.com/public/gateway-${major_minor}/raw/names/kong-${arch}/versions/${KONG_VERSION}/kong-${KONG_VERSION}.${arch}.apk.tar.gz" -o /tmp/kong.apk.tar.gz \
&& echo "$KONG_SHA256 /tmp/kong.apk.tar.gz" | sha256sum -c -; \
curl -fL "https://packages.konghq.com/public/gateway-${major_minor}/alpine/any-version/main/x86_64/kong-${KONG_VERSION}.apk" -o /tmp/kong.tar.gz \
&& echo "$KONG_SHA256 /tmp/kong.tar.gz" | sha256sum -c -; \
fi \
&& apk add --no-cache --virtual .build-deps tar gzip \
&& tar -C / -xzf /tmp/kong.apk.tar.gz \
&& apk add --no-cache libstdc++ libgcc openssl pcre perl tzdata libcap zlib zlib-dev bash \
&& tar -C / -xzf /tmp/kong.tar.gz \
&& apk add --no-cache libstdc++ libgcc openssl pcre perl tzdata libcap zlib zlib-dev bash luarocks yaml \
&& adduser -S kong \
&& addgroup -S kong \
&& mkdir -p "${KONG_PREFIX}" \
Expand All @@ -40,6 +35,7 @@ RUN set -ex; \
&& ln -sf /usr/local/openresty/luajit/bin/luajit /usr/local/bin/luajit \
&& ln -sf /usr/local/openresty/luajit/bin/luajit /usr/local/bin/lua \
&& ln -sf /usr/local/openresty/nginx/sbin/nginx /usr/local/bin/nginx \
&& ln -sf /usr/local/lib/luarocks/*/luarocks/*/bin/luarocks-admin /usr/local/bin/luarocks-admin \
&& apk del .build-deps \
&& kong version

Expand Down
1 change: 1 addition & 0 deletions Dockerfile.rpm
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ RUN set -ex; \
&& ln -sf /usr/local/openresty/luajit/bin/luajit /usr/local/bin/luajit \
&& ln -sf /usr/local/openresty/luajit/bin/luajit /usr/local/bin/lua \
&& ln -sf /usr/local/openresty/nginx/sbin/nginx /usr/local/bin/nginx \
&& ln -sf /usr/local/lib/luarocks/*/luarocks/*/bin/luarocks-admin /usr/local/bin/luarocks-admin \
&& kong version

COPY docker-entrypoint.sh /docker-entrypoint.sh
Expand Down
59 changes: 22 additions & 37 deletions alpine/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,58 +1,43 @@
FROM alpine:3.18

LABEL maintainer="Kong <[email protected]>"
ARG KONG_VERSION=2.8.5
ENV KONG_VERSION $KONG_VERSION

ARG KONG_AMD64_SHA="22a5cd7c981ec15b34db105aabac7815bd589380a8d27d0c9e138657a9da6332"

ARG ASSET=ce
ENV ASSET $ASSET
ARG KONG_PREFIX=/usr/local/kong
ENV KONG_PREFIX $KONG_PREFIX

ARG ASSET=remote
ARG EE_PORTS

# hadolint ignore=DL3010
COPY kong.tar.gz /tmp/kong.tar.gz

ARG KONG_VERSION=2.8.4
ENV KONG_VERSION $KONG_VERSION

ARG KONG_AMD64_SHA="930b3b933b6c3f0393700433a919745900485d19e0cd8aba2d70aa066ccd10d2"
ARG KONG_ARM64_SHA="9027da2a4df477b462f34da9450412012ffdc0f9019e33ed7ff8e88f3df062c6"

# hadolint ignore=DL3018
RUN set -eux; \
arch="$(apk --print-arch)"; \
RUN set -ex; \
major_minor="$(echo "${KONG_VERSION%.*}" | tr -d '.')"; \
case "${arch}" in \
x86_64) KONG_SHA256=$KONG_AMD64_SHA ;; \
aarch64) KONG_SHA256=$KONG_ARM64_SHA ;; \
esac; \
if [ "$ASSET" = "ce" ] ; then \
apk add --no-cache --virtual .build-deps curl wget tar ca-certificates \
&& curl -fL "https://packages.konghq.com/public/gateway-${major_minor}/raw/names/kong-${arch}/versions/${KONG_VERSION}/kong-${KONG_VERSION}.${arch}.apk.tar.gz" -o /tmp/kong.tar.gz \
&& echo "$KONG_SHA256 /tmp/kong.tar.gz" | sha256sum -c - \
&& apk del .build-deps; \
else \
# this needs to stay inside this "else" block so that it does not become part of the "official images" builds (https://github.com/docker-library/official-images/pull/11532#issuecomment-996219700)
apk upgrade; \
KONG_SHA256=$KONG_AMD64_SHA ; \
apk add bash curl ca-certificates; \
if [ "$ASSET" = "remote" ] ; then \
curl -fL "https://packages.konghq.com/public/gateway-${major_minor}/alpine/any-version/main/x86_64/kong-${KONG_VERSION}.apk" -o /tmp/kong.tar.gz \
&& echo "$KONG_SHA256 /tmp/kong.tar.gz" | sha256sum -c -; \
fi \
&& mkdir /kong \
&& tar -C /kong -xzf /tmp/kong.tar.gz \
&& mv /kong/usr/local/* /usr/local \
&& mv /kong/etc/* /etc \
&& rm -rf /kong \
&& apk add --no-cache libstdc++ libgcc openssl pcre perl tzdata libcap zip bash zlib zlib-dev git ca-certificates \
&& apk add --no-cache --virtual .build-deps tar gzip \
&& tar -C / -xzf /tmp/kong.tar.gz \
&& apk add --no-cache libstdc++ libgcc openssl pcre perl tzdata libcap zlib zlib-dev bash luarocks yaml \
&& adduser -S kong \
&& addgroup -S kong \
&& mkdir -p "/usr/local/kong" \
&& chown -R kong:0 /usr/local/kong \
&& mkdir -p "${KONG_PREFIX}" \
&& chown -R kong:0 ${KONG_PREFIX} \
&& chown kong:0 /usr/local/bin/kong \
&& chmod -R g=u /usr/local/kong \
&& chmod -R g=u ${KONG_PREFIX} \
&& rm -rf /tmp/kong.tar.gz \
&& ln -sf /usr/local/openresty/bin/resty /usr/local/bin/resty \
&& ln -sf /usr/local/openresty/luajit/bin/luajit /usr/local/bin/luajit \
&& ln -sf /usr/local/openresty/luajit/bin/luajit /usr/local/bin/lua \
&& ln -sf /usr/local/openresty/nginx/sbin/nginx /usr/local/bin/nginx \
&& if [ "$ASSET" = "ce" ] ; then \
kong version; \
fi
&& ln -sf /usr/local/lib/luarocks/*/luarocks/*/bin/luarocks-admin /usr/local/bin/luarocks-admin \
&& apk del .build-deps \
&& kong version

COPY docker-entrypoint.sh /docker-entrypoint.sh

Expand Down
8 changes: 4 additions & 4 deletions rhel/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@ FROM registry.access.redhat.com/ubi${RHEL_VERSION}/ubi

MAINTAINER Kong

ARG KONG_VERSION=2.8.4
ARG KONG_VERSION=2.8.5
ENV KONG_VERSION $KONG_VERSION

ARG KONG_SHA256="cad72db4b24884800043758821408cfb594f89936d5ec03908da7bc01680cc66"
ARG KONG_SHA256="150fad056eaaa420bac798cca6b54874607eb903af13f5c2dc4f9ab9791c81f4"

LABEL name="Kong" \
vendor="Kong" \
Expand All @@ -30,10 +30,9 @@ ARG RHEL_VERSION
ENV RHEL_VERSION $RHEL_VERSION

RUN set -ex; \
arch='x86_64'; \
major_minor="$(echo "${KONG_VERSION%.*}" | tr -d '.')"; \
if [ "$ASSET" = "ce" ] ; then \
curl -fL "https://packages.konghq.com/public/gateway-${major_minor}/rpm/el/${RHEL_VERSION}/${arch}/kong-${KONG_VERSION}.el${RHEL_VERSION}.${arch}.rpm" -o /tmp/kong.rpm \
curl -fL "https://packages.konghq.com/public/gateway-${major_minor}/rpm/el/${RHEL_VERSION}/x86_64/kong-${KONG_VERSION}.el${RHEL_VERSION}.x86_64.rpm" -o /tmp/kong.rpm \
&& echo "$KONG_SHA256 /tmp/kong.rpm" | sha256sum -c -; \
else \
yum update -y \
Expand All @@ -55,6 +54,7 @@ RUN set -ex; \
&& ln -sf /usr/local/openresty/luajit/bin/luajit /usr/local/bin/luajit \
&& ln -sf /usr/local/openresty/luajit/bin/luajit /usr/local/bin/lua \
&& ln -sf /usr/local/openresty/nginx/sbin/nginx /usr/local/bin/nginx \
&& ln -sf /usr/local/lib/luarocks/*/luarocks/*/bin/luarocks-admin /usr/local/bin/luarocks-admin \
&& if [ "$ASSET" = "ce" ] ; then \
kong version ; \
fi
Expand Down
20 changes: 20 additions & 0 deletions update.sh
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,26 @@ if [[ -n "$kbt_in_kong_v" ]]; then
sed -i.bak 's/KONG_BUILD_TOOLS?=.*/KONG_BUILD_TOOLS?='$kbt_in_kong_v'/g' Makefile
fi

pushd alpine
url=$(get_url Dockerfile amd64)
echo $url
curl -fL $url -o /tmp/kong
new_sha=$(sha256sum /tmp/kong | cut -b1-64)

sed -i.bak 's/ARG KONG_AMD64_SHA=.*/ARG KONG_AMD64_SHA=\"'$new_sha'\"/g' Dockerfile
sed -i.bak 's/ARG KONG_VERSION=.*/ARG KONG_VERSION='$version'/g' Dockerfile
popd

pushd rhel
url=$(get_url Dockerfile amd64 "RHEL_VERSION=7")
echo $url
curl -fL $url -o /tmp/kong
new_sha=$(sha256sum /tmp/kong | cut -b1-64)

sed -i.bak 's/ARG KONG_SHA256=.*/ARG KONG_SHA256=\"'$new_sha'\"/g' Dockerfile
sed -i.bak 's/ARG KONG_VERSION=.*/ARG KONG_VERSION='$version'/g' Dockerfile
popd

# Dockerfile.rpm
url=$(get_url Dockerfile.rpm x86_64 "VERSION=8")
echo $url
Expand Down
Loading