diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 01c58cc5c9e..1418f9424ab 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -176,6 +176,7 @@ jobs: build-args: | BUILD_PACKAGE_NAME=tyk-gateway-ee BASE_IMAGE=tykio/dhi-busybox:1.37-fips + NONROOT_CHOWN=true - name: Docker metadata for ee tag push id: tag_metadata_ee uses: docker/metadata-action@c299e40c65443455700f0fdfc63efafe5b349051 # v5 @@ -211,6 +212,7 @@ jobs: build-args: | BUILD_PACKAGE_NAME=tyk-gateway-ee BASE_IMAGE=tykio/dhi-busybox:1.37-fips + NONROOT_CHOWN=true - name: Attach base image VEX to ee if: ${{ matrix.golang_cross == '1.25-bullseye' && startsWith(github.ref, 'refs/tags') }} run: | @@ -259,6 +261,7 @@ jobs: build-args: | BUILD_PACKAGE_NAME=tyk-gateway-fips BASE_IMAGE=tykio/dhi-busybox:1.37-fips + NONROOT_CHOWN=true - name: Docker metadata for fips tag push id: tag_metadata_fips uses: docker/metadata-action@c299e40c65443455700f0fdfc63efafe5b349051 # v5 @@ -293,6 +296,7 @@ jobs: build-args: | BUILD_PACKAGE_NAME=tyk-gateway-fips BASE_IMAGE=tykio/dhi-busybox:1.37-fips + NONROOT_CHOWN=true - name: Attach base image VEX to fips if: ${{ matrix.golang_cross == '1.25-bullseye' && startsWith(github.ref, 'refs/tags') }} run: | diff --git a/ci/Dockerfile.distroless b/ci/Dockerfile.distroless index f6d9b2af913..856c4102f5a 100644 --- a/ci/Dockerfile.distroless +++ b/ci/Dockerfile.distroless @@ -10,11 +10,14 @@ ENV DEBIAN_FRONTEND=noninteractive # The _ after the pkg name is to match tyk-gateway strictly and not tyk-gateway-fips (for example) COPY ${BUILD_PACKAGE_NAME}_*${TARGETARCH}.deb / -RUN dpkg -i /${BUILD_PACKAGE_NAME}_*${TARGETARCH}.deb && rm /*.deb +ARG NONROOT_CHOWN=false +RUN dpkg -i /${BUILD_PACKAGE_NAME}_*${TARGETARCH}.deb && rm /*.deb \ + && chmod -R a+rX /opt/tyk-gateway/ \ + && if [ "$NONROOT_CHOWN" = "true" ]; then chown -R 65532:65532 /opt/tyk-gateway/; fi FROM ${BASE_IMAGE} -COPY --chown=65532:65532 --from=deb /opt/tyk-gateway /opt/tyk-gateway +COPY --from=deb /opt/tyk-gateway /opt/tyk-gateway ARG PORTS EXPOSE $PORTS