From fc7db202cc225eb0d76f11e989b83865917de4ef Mon Sep 17 00:00:00 2001 From: Allan Nava Date: Tue, 23 Jan 2024 16:50:30 +0100 Subject: [PATCH] added dockerfile --- ...3.4.0.yml => docker-publish-kong3.3.1.yml} | 6 +- .../workflows/docker-publish-kong3.4.2.yml | 86 +++++++++++++++++++ Dockerfile.kong3.3.1 | 23 +++++ Dockerfile.kong3.4.0 => Dockerfile.kong3.4.2 | 4 +- Dockerfile.kong3.5.0 | 4 +- 5 files changed, 116 insertions(+), 7 deletions(-) rename .github/workflows/{docker-publish-kong3.4.0.yml => docker-publish-kong3.3.1.yml} (96%) create mode 100644 .github/workflows/docker-publish-kong3.4.2.yml create mode 100644 Dockerfile.kong3.3.1 rename Dockerfile.kong3.4.0 => Dockerfile.kong3.4.2 (90%) diff --git a/.github/workflows/docker-publish-kong3.4.0.yml b/.github/workflows/docker-publish-kong3.3.1.yml similarity index 96% rename from .github/workflows/docker-publish-kong3.4.0.yml rename to .github/workflows/docker-publish-kong3.3.1.yml index 4de154f..2613921 100644 --- a/.github/workflows/docker-publish-kong3.4.0.yml +++ b/.github/workflows/docker-publish-kong3.3.1.yml @@ -1,4 +1,4 @@ -name: Docker publish kong3.4.0 +name: Docker publish kong3.3.1 'on': push: tags: @@ -24,7 +24,7 @@ jobs: run: | REG=ghcr.io IMAGE=$(echo ${{ github.repository }} | tr '[:upper:]' '[:lower:]') - DOCKER_IMAGE=${REG}/${IMAGE}-3.4.0 + DOCKER_IMAGE=${REG}/${IMAGE}-3.3.1 VERSION=nool if [ "${{ github.event_name }}" = "schedule" ]; then VERSION=nightly @@ -59,7 +59,7 @@ jobs: uses: docker/build-push-action@v4 with: context: . - file: ./Dockerfile.kong3.5.0 + file: ./Dockerfile.kong3.3.1 platforms: linux/amd64 push: true tags: '${{ steps.prep.outputs.tags }}' diff --git a/.github/workflows/docker-publish-kong3.4.2.yml b/.github/workflows/docker-publish-kong3.4.2.yml new file mode 100644 index 0000000..d64795c --- /dev/null +++ b/.github/workflows/docker-publish-kong3.4.2.yml @@ -0,0 +1,86 @@ +name: Docker publish kong3.4.2 +'on': + push: + tags: + - '*' +jobs: + docker: + runs-on: ubuntu-latest + permissions: + contents: read + packages: write + steps: + - name: Checkout + uses: actions/checkout@v3 + - name: Repo metadata + id: repo + uses: actions/github-script@v4 + with: + script: | + const repo = await github.repos.get(context.repo) + return repo.data + - name: Prepare + id: prep + run: | + REG=ghcr.io + IMAGE=$(echo ${{ github.repository }} | tr '[:upper:]' '[:lower:]') + DOCKER_IMAGE=${REG}/${IMAGE}-3.4.2 + VERSION=nool + if [ "${{ github.event_name }}" = "schedule" ]; then + VERSION=nightly + elif [[ $GITHUB_REF == refs/tags/* ]]; then + VERSION=${GITHUB_REF#refs/tags/} + elif [[ $GITHUB_REF == refs/heads/* ]]; then + VERSION=$(echo ${GITHUB_REF#refs/heads/} | sed -r 's#/+#-#g') + if [ "${{ github.event.repository.default_branch }}" = "$VERSION" ]; then + VERSION=latest + fi + elif [[ $GITHUB_REF == refs/pull/* ]]; then + VERSION=pr-${{ github.event.number }} + fi + TAGS="${DOCKER_IMAGE}:${VERSION}" + if [[ $VERSION =~ ^v[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]]; then + MINOR=${VERSION%.*} + MAJOR=${MINOR%.*} + TAGS="$TAGS,${DOCKER_IMAGE}:${MINOR},${DOCKER_IMAGE}:${MAJOR},${DOCKER_IMAGE}:latest" + fi + echo ::set-output name=version::${VERSION} + echo ::set-output name=tags::${TAGS} + echo ::set-output name=created::$(date -u +'%Y-%m-%dT%H:%M:%SZ') + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v2 + - name: Login to GitHub Container Registry + uses: docker/login-action@v2 + with: + registry: ghcr.io + username: '${{ github.actor }}' + password: '${{ secrets.GITHUB_TOKEN }}' + - name: Build and push + uses: docker/build-push-action@v4 + with: + context: . + file: ./Dockerfile.kong3.4.2 + platforms: linux/amd64 + push: true + tags: '${{ steps.prep.outputs.tags }}' + labels: > + org.opencontainers.image.title=${{ + fromJson(steps.repo.outputs.result).name }} + + org.opencontainers.image.description=${{ + fromJson(steps.repo.outputs.result).description }} + + org.opencontainers.image.url=${{ + fromJson(steps.repo.outputs.result).html_url }} + + org.opencontainers.image.source=${{ + fromJson(steps.repo.outputs.result).html_url }} + + org.opencontainers.image.version=${{ steps.prep.outputs.version }} + + org.opencontainers.image.created=${{ steps.prep.outputs.created }} + + org.opencontainers.image.revision=${{ github.sha }} + + org.opencontainers.image.licenses=${{ + fromJson(steps.repo.outputs.result).license.spdx_id }} \ No newline at end of file diff --git a/Dockerfile.kong3.3.1 b/Dockerfile.kong3.3.1 new file mode 100644 index 0000000..18917f9 --- /dev/null +++ b/Dockerfile.kong3.3.1 @@ -0,0 +1,23 @@ +FROM kong/kong:3.3.1-alpine +LABEL description="Kong 3.3.1 + kong-oidc plugin" +ENV OIDC_PLUGIN_VERSION=1.1.0-0 +ENV JWT_PLUGIN_VERSION=1.1.0-1 + +USER root +RUN apk update && apk add git unzip luarocks +RUN luarocks install kong-oidc + +RUN git clone https://github.com/PSheshenya/kong-oidc.git \ + && cd kong-oidc \ + && luarocks make + +RUN luarocks pack kong-oidc ${OIDC_PLUGIN_VERSION} \ + && luarocks install kong-oidc-${OIDC_PLUGIN_VERSION}.all.rock + +RUN git clone --branch 20200505-access-token-processing https://github.com/BGaunitz/kong-plugin-jwt-keycloak.git \ + && cd kong-plugin-jwt-keycloak \ + && luarocks make + +RUN luarocks pack kong-plugin-jwt-keycloak ${JWT_PLUGIN_VERSION} \ + && luarocks install kong-plugin-jwt-keycloak-${JWT_PLUGIN_VERSION}.all.rock +USER kong \ No newline at end of file diff --git a/Dockerfile.kong3.4.0 b/Dockerfile.kong3.4.2 similarity index 90% rename from Dockerfile.kong3.4.0 rename to Dockerfile.kong3.4.2 index 0c4755f..dce2fcb 100644 --- a/Dockerfile.kong3.4.0 +++ b/Dockerfile.kong3.4.2 @@ -1,10 +1,10 @@ -FROM kong/kong:3.4.0-alpine +FROM kong/kong:3.4.2-ubuntu LABEL description="Kong 3.5.0 + kong-oidc plugin" ENV OIDC_PLUGIN_VERSION=1.1.0-0 ENV JWT_PLUGIN_VERSION=1.1.0-1 USER root -RUN apk update && apk add git unzip luarocks +RUN apt update && apt add git unzip luarocks RUN luarocks install kong-oidc RUN git clone https://github.com/PSheshenya/kong-oidc.git \ diff --git a/Dockerfile.kong3.5.0 b/Dockerfile.kong3.5.0 index df9c9d2..3019c6a 100644 --- a/Dockerfile.kong3.5.0 +++ b/Dockerfile.kong3.5.0 @@ -1,10 +1,10 @@ -FROM kong/kong:3.5.0-alpine +FROM kong/kong:3.5.0-ubuntu LABEL description="Kong 3.5.0 + kong-oidc plugin" ENV OIDC_PLUGIN_VERSION=1.1.0-0 ENV JWT_PLUGIN_VERSION=1.1.0-1 USER root -RUN apk update && apk add git unzip luarocks +RUN apt update && apt add git unzip luarocks RUN luarocks install kong-oidc RUN git clone https://github.com/PSheshenya/kong-oidc.git \