From 8ae601561bdebc5722c09687455485227a4db1d3 Mon Sep 17 00:00:00 2001 From: Marcel <110860055+Morethanevil@users.noreply.github.com> Date: Sun, 2 Nov 2025 08:11:19 +0100 Subject: [PATCH 01/11] Update CHANGELOG.md --- CHANGELOG.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 283db3c..387b198 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,13 @@ +# v3.2.9 2 Nov 2025 + ++ Add PKCE support with SHA256 challenge method for OAuth2 by [kjagosz](https://github.com/kjagosz) fixes [#852](https://github.com/tobychui/zoraxy/issues/852) ++ Update lego to v4.28.0 by [zen8841](https://github.com/zen8841) fixes [778](https://github.com/tobychui/zoraxy/issues/778) ++ Typo in plugins.html by [mlbarrow](mlbarrow) ++ Moved log rotation options to webmin panel ++ Supported opening tar.gz in the new log viewer ++ Added disable logging function to HTTP proxy rule for high traffic sites ++ Fixed other bugs / improvements [#855](https://github.com/tobychui/zoraxy/issues/855) [#866](https://github.com/tobychui/zoraxy/issues/866) [#867](https://github.com/tobychui/zoraxy/issues/867) [#855](https://github.com/tobychui/zoraxy/issues/856) + # v3.2.8 16 Oct 2025 + Fixed wildcard certificate bug [#845](https://github.com/tobychui/zoraxy/issues/845) by [zen8841](https://github.com/zen8841) From 651c322680361c7e7bace0ad6a0cfd9c3218c9a3 Mon Sep 17 00:00:00 2001 From: Blackmoon Date: Sat, 8 Nov 2025 14:05:40 +0100 Subject: [PATCH 02/11] =?UTF-8?q?Static=20values=20=E2=80=8B=E2=80=8Boutso?= =?UTF-8?q?urced=20to=20ENV=20variable?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/docker.yml | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 60d7b5d..bfc5edf 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -4,6 +4,11 @@ on: release: types: [ released, prereleased ] +env: + DOCKER_ACCOUNT: zoraxydocker + DOCKER_REPO: zoraxy + DOCKER_PLATFORMS: linux/amd64,linux/arm64 + jobs: setup-build-push: runs-on: ubuntu-latest @@ -39,10 +44,10 @@ jobs: with: context: ./docker push: true - platforms: linux/amd64,linux/arm64 + platforms: ${{ env.DOCKER_PLATFORMS }} tags: | - zoraxydocker/zoraxy:latest - zoraxydocker/zoraxy:${{ github.event.release.tag_name }} + ${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:latest + ${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:${{ github.event.release.tag_name }} cache-from: type=gha cache-to: type=gha,mode=max @@ -52,9 +57,9 @@ jobs: with: context: ./docker push: true - platforms: linux/amd64,linux/arm64 + platforms: ${{ env.DOCKER_PLATFORMS }} tags: | - zoraxydocker/zoraxy:${{ github.event.release.tag_name }} + ${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:${{ github.event.release.tag_name }} cache-from: type=gha cache-to: type=gha,mode=max From 60d66ff3281150fe1a543c2082d631cc371c8125 Mon Sep 17 00:00:00 2001 From: Blackmoon Date: Sat, 8 Nov 2025 14:08:17 +0100 Subject: [PATCH 03/11] The caching method has been switched from gha to registry cache --- .github/workflows/docker.yml | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index bfc5edf..64370ec 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -7,6 +7,7 @@ on: env: DOCKER_ACCOUNT: zoraxydocker DOCKER_REPO: zoraxy + DOCKER_REPO_TAG_CACHE_NAME: buildcache DOCKER_PLATFORMS: linux/amd64,linux/arm64 jobs: @@ -29,10 +30,6 @@ jobs: with: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_PASSWORD }} - - - name: Pull last image for layer reuse - run: | - docker pull docker.io/zoraxydocker/zoraxy:latest - name: Setup building file structure run: | @@ -48,8 +45,8 @@ jobs: tags: | ${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:latest ${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:${{ github.event.release.tag_name }} - cache-from: type=gha - cache-to: type=gha,mode=max + cache-from: type=registry,ref=${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:${{ env.DOCKER_REPO_TAG_CACHE_NAME }} + cache-to: type=registry,ref=${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:${{ env.DOCKER_REPO_TAG_CACHE_NAME }},mode=max - name: Build and push Docker image (Prerelease) if: "github.event.release.prerelease" @@ -60,6 +57,6 @@ jobs: platforms: ${{ env.DOCKER_PLATFORMS }} tags: | ${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:${{ github.event.release.tag_name }} - cache-from: type=gha - cache-to: type=gha,mode=max + cache-from: type=registry,ref=${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:${{ env.DOCKER_REPO_TAG_CACHE_NAME }} + cache-to: type=registry,ref=${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:${{ env.DOCKER_REPO_TAG_CACHE_NAME }},mode=max From f527458f484204584f171e5967babbba287cb79c Mon Sep 17 00:00:00 2001 From: Blackmoon Date: Sat, 8 Nov 2025 15:40:39 +0100 Subject: [PATCH 04/11] A permissions section has been added --- .github/workflows/docker.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 64370ec..90cb61e 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -9,6 +9,9 @@ env: DOCKER_REPO: zoraxy DOCKER_REPO_TAG_CACHE_NAME: buildcache DOCKER_PLATFORMS: linux/amd64,linux/arm64 + +permissions: + contents: read jobs: setup-build-push: From e98b8e1386854aa4d63e185763bf9b5edfeb6104 Mon Sep 17 00:00:00 2001 From: Blackmoon Date: Sat, 8 Nov 2025 17:34:19 +0100 Subject: [PATCH 05/11] The tag detection for the Docker image has been revised --- .github/workflows/docker.yml | 32 +++++++++++++------------------- 1 file changed, 13 insertions(+), 19 deletions(-) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 90cb61e..b7aecc6 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -38,28 +38,22 @@ jobs: run: | cp -lr $GITHUB_WORKSPACE/src/ $GITHUB_WORKSPACE/docker/src/ - - name: Build and push Docker image (Release) - if: "!github.event.release.prerelease" - uses: docker/build-push-action@v6 + - name: Create tag list for docker image + id: tags + run: | + if [ "${{ github.event.release.prerelease }}" = true ]; then + echo "docker=${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:${{ github.event.release.tag_name }}" >> $GITHUB_OUTPUT + else + echo "docker=${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:latest, ${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:${{ github.event.release.tag_name }}" >> $GITHUB_OUTPUT + fi + cache-to: type=registry,ref=${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:${{ env.DOCKER_REPO_TAG_CACHE_NAME }},mode=max + + - name: Build and push Docker image + uses: docker/build-push-action@263435318d21b8e681c14492fe198d362a7d2c83 # v6.18.0 with: context: ./docker push: true platforms: ${{ env.DOCKER_PLATFORMS }} - tags: | - ${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:latest - ${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:${{ github.event.release.tag_name }} + tags: ${{ steps.tags.outputs.docker }} cache-from: type=registry,ref=${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:${{ env.DOCKER_REPO_TAG_CACHE_NAME }} cache-to: type=registry,ref=${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:${{ env.DOCKER_REPO_TAG_CACHE_NAME }},mode=max - - - name: Build and push Docker image (Prerelease) - if: "github.event.release.prerelease" - uses: docker/build-push-action@v6 - with: - context: ./docker - push: true - platforms: ${{ env.DOCKER_PLATFORMS }} - tags: | - ${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:${{ github.event.release.tag_name }} - cache-from: type=registry,ref=${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:${{ env.DOCKER_REPO_TAG_CACHE_NAME }} - cache-to: type=registry,ref=${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:${{ env.DOCKER_REPO_TAG_CACHE_NAME }},mode=max - From 5d8817dcaa34dd598666f9297d7ad49515ae4ad0 Mon Sep 17 00:00:00 2001 From: Blackmoon Date: Sat, 8 Nov 2025 17:40:33 +0100 Subject: [PATCH 06/11] The file schema was checked and corrected using yamllint. --- .github/workflows/docker.yml | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index b7aecc6..4e906fa 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -1,8 +1,9 @@ +--- name: Build and push Docker image -on: +"on": release: - types: [ released, prereleased ] + types: [released, prereleased] env: DOCKER_ACCOUNT: zoraxydocker @@ -12,7 +13,7 @@ env: permissions: contents: read - + jobs: setup-build-push: runs-on: ubuntu-latest @@ -33,14 +34,14 @@ jobs: with: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_PASSWORD }} - + - name: Setup building file structure run: | cp -lr $GITHUB_WORKSPACE/src/ $GITHUB_WORKSPACE/docker/src/ - name: Create tag list for docker image id: tags - run: | + run: | if [ "${{ github.event.release.prerelease }}" = true ]; then echo "docker=${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:${{ github.event.release.tag_name }}" >> $GITHUB_OUTPUT else From f3f7074d0e9728cca8518f2f6b05fac7b242d49f Mon Sep 17 00:00:00 2001 From: Blackmoon Date: Sat, 8 Nov 2025 17:51:14 +0100 Subject: [PATCH 07/11] Pin actions to a full-length commit SHA --- .github/workflows/docker.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 4e906fa..2fdfe7c 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -19,18 +19,18 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 with: ref: ${{ github.event.release.tag_name }} - name: Set up QEMU - uses: docker/setup-qemu-action@v3 + uses: docker/setup-qemu-action@29109295f81e9208d7d86ff1c6c12d2833863392 # v3.6.0 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v3 + uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1 - name: Login to Docker Hub - uses: docker/login-action@v3 + uses: docker/login-action@184bdaa0721073962dff0199f1fb9940f07167d1 # v3.5.0 with: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_PASSWORD }} From f3a0950b06dcb6fee8ca91b05d30975fc5b4fc7c Mon Sep 17 00:00:00 2001 From: Blackmoon Date: Sun, 9 Nov 2025 10:02:34 +0100 Subject: [PATCH 08/11] Copy and paste errors fixed --- .github/workflows/docker.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 2fdfe7c..bf5614e 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -47,7 +47,6 @@ jobs: else echo "docker=${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:latest, ${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:${{ github.event.release.tag_name }}" >> $GITHUB_OUTPUT fi - cache-to: type=registry,ref=${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:${{ env.DOCKER_REPO_TAG_CACHE_NAME }},mode=max - name: Build and push Docker image uses: docker/build-push-action@263435318d21b8e681c14492fe198d362a7d2c83 # v6.18.0 From 048dc12eb0aed9dcbe77a546fec61abe7fe0ccab Mon Sep 17 00:00:00 2001 From: DeusMaximus Date: Sun, 16 Nov 2025 00:38:49 +1000 Subject: [PATCH 09/11] Add timezone environment variable to Dockerfile Add tzdata and set the timezone in the Dockerfile. --- docker/Dockerfile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docker/Dockerfile b/docker/Dockerfile index 1ad1cd3..f8008f6 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -37,7 +37,7 @@ RUN curl -Lo ZeroTierOne.tar.gz https://codeload.github.com/zerotier/ZeroTierOne ## Main FROM docker.io/alpine:latest -RUN apk add --update --no-cache python3 sudo netcat-openbsd libressl-dev openssh ca-certificates libc6-compat libstdc++ &&\ +RUN apk add --update --no-cache tzdata python3 sudo netcat-openbsd libressl-dev openssh ca-certificates libc6-compat libstdc++ &&\ rm -rf /var/cache/apk/* /tmp/* COPY --chmod=700 ./entrypoint.py /opt/zoraxy/ @@ -50,6 +50,7 @@ RUN mkdir -p /opt/zoraxy/plugin/ &&\ WORKDIR /opt/zoraxy/config/ +ENV TZ="Etc/UTC" ENV ZEROTIER="false" ENV AUTORENEW="86400" From e79909ac7058fac44c5fdde3f184f4e1e8e29ffb Mon Sep 17 00:00:00 2001 From: DeusMaximus Date: Sun, 16 Nov 2025 04:04:05 +1000 Subject: [PATCH 10/11] Update timezone environment variable in README --- docker/README.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/docker/README.md b/docker/README.md index aaf0bbb..65402ec 100644 --- a/docker/README.md +++ b/docker/README.md @@ -26,8 +26,8 @@ docker run -d \ -v /path/to/zoraxy/config/:/opt/zoraxy/config/ \ -v /path/to/zoraxy/plugin/:/opt/zoraxy/plugin/ \ -v /var/run/docker.sock:/var/run/docker.sock \ - -v /etc/localtime:/etc/localtime \ -e FASTGEOIP="true" \ + -e TZ="America/New_York" \ zoraxydocker/zoraxy:latest ``` @@ -47,11 +47,11 @@ services: - /path/to/zoraxy/config/:/opt/zoraxy/config/ - /path/to/zoraxy/plugin/:/opt/zoraxy/plugin/ - /var/run/docker.sock:/var/run/docker.sock - - /etc/localtime:/etc/localtime extra_hosts: - "host.docker.internal:host-gateway" environment: FASTGEOIP: "true" + TZ: "Europe/London" ``` ### Ports @@ -95,6 +95,7 @@ Variables are the same as those in [Start Parameters](https://github.com/tobychu | `PLUGIN` | `/opt/zoraxy/plugin/` (String) | Set the path for Zoraxy plugins. Only change this if you know what you are doing. | | `PORT` | `8000` (Integer) | Management web interface listening port | | `SSHLB` | `false` (Boolean) | Allow loopback web ssh connection (DANGER). | +| `TZ` | `Etc/UTC` (String) | Define timezone using [standard tzdata values](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones). | | `UPDATE_GEOIP` | `false` (Boolean) | Download the latest GeoIP data and exit. | | `VERSION` | `false` (Boolean) | Show version of this server. | | `WEBFM` | `true` (Boolean) | Enable web file manager for static web server root folder. | From b71328b99ed8e7e2921fca30922d9ff1babfbe76 Mon Sep 17 00:00:00 2001 From: PassiveLemon Date: Mon, 24 Nov 2025 18:27:33 -0500 Subject: [PATCH 11/11] fix rc image release --- .github/workflows/docker.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index bf5614e..e7a972d 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -44,6 +44,8 @@ jobs: run: | if [ "${{ github.event.release.prerelease }}" = true ]; then echo "docker=${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:${{ github.event.release.tag_name }}" >> $GITHUB_OUTPUT + elif [[ "${{ github.event.release.tag_name }}" == *"-rc"* ]]; then + echo "docker=${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:${{ github.event.release.tag_name }}" >> $GITHUB_OUTPUT else echo "docker=${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:latest, ${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:${{ github.event.release.tag_name }}" >> $GITHUB_OUTPUT fi @@ -57,3 +59,4 @@ jobs: tags: ${{ steps.tags.outputs.docker }} cache-from: type=registry,ref=${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:${{ env.DOCKER_REPO_TAG_CACHE_NAME }} cache-to: type=registry,ref=${{ env.DOCKER_ACCOUNT }}/${{ env.DOCKER_REPO }}:${{ env.DOCKER_REPO_TAG_CACHE_NAME }},mode=max +