fix(🐳 docker): migrate base image back to Alpine 3.22.2 for improved compatibility and reproducible builds

This commit is contained in:
rE-Bo0t.bx1
2025-11-06 20:21:33 +08:00
parent e059cbc6e6
commit 2904ce3e35
3 changed files with 82 additions and 23 deletions

View File

@@ -346,6 +346,7 @@ jobs:
runs-on: ubuntu-latest
needs: [determine-version, build-and-push, validate]
if: needs.determine-version.outputs.is_release == 'true'
steps:
- name: 📥 Checkout Repository
uses: actions/checkout@v5
@@ -353,22 +354,50 @@ jobs:
- name: 📝 Generate Notes
run: |
VERSION="${{ needs.determine-version.outputs.version }}"
GHCR_IMAGE="${{ env.GHCR_REGISTRY }}/${{ env.GHCR_IMAGE_NAME }}"
DOCKERHUB_IMAGE="${{ env.DOCKERHUB_IMAGE_NAME }}"
echo "## 🧅 Tor Guard Relay v${VERSION} Release Notes" > release_notes.md
echo "" >> release_notes.md
if [ -f CHANGELOG.md ]; then
awk "/## \\[${VERSION}\\]/,/## \\[[0-9]+\\.[0-9]+\\.[0-9]+\\]/ {if (!/## \\[[0-9]+\\.[0-9]+\\.[0-9]+\\]/ || NR==1) print}" CHANGELOG.md >> release_notes.md || true
echo "🔍 Extracting changelog section for v${VERSION}..."
# Extract changelog content between the current version header and the next one
awk -v ver="## [${VERSION}]" '
$0 ~ ver {p=1; next}
p && /^## \[/ {p=0}
p
' CHANGELOG.md > tmp_notes.txt
# Clean up extra blank lines
sed -i '/^$/N;/^\n$/D' tmp_notes.txt 2>/dev/null || true
if [ -s tmp_notes.txt ]; then
cat tmp_notes.txt >> release_notes.md
echo "✅ Extracted changelog section for v${VERSION}"
else
echo "⚠️ No changelog section found for v${VERSION}" >> release_notes.md
echo "See [commit history](https://github.com/${{ github.repository }}/commits/v${VERSION}) for details." >> release_notes.md
fi
else
echo "⚠️ CHANGELOG.md not found. Using commit history instead." >> release_notes.md
echo "See [commit history](https://github.com/${{ github.repository }}/commits/v${VERSION}) for details." >> release_notes.md
fi
echo "" >> release_notes.md
echo "---" >> release_notes.md
echo "" >> release_notes.md
echo "### 🐳 Docker Images" >> release_notes.md
echo "\`\`\`bash" >> release_notes.md
echo "# 📦 From GHCR:" >> release_notes.md
echo "docker pull ${{ env.GHCR_REGISTRY }}/${{ env.GHCR_IMAGE_NAME }}:${VERSION}" >> release_notes.md
echo "# 📦 From GitHub Container Registry (GHCR)" >> release_notes.md
echo "docker pull ${GHCR_IMAGE}:${VERSION}" >> release_notes.md
echo "" >> release_notes.md
echo "# 🐳 From Docker Hub:" >> release_notes.md
echo "docker pull ${{ env.DOCKERHUB_IMAGE_NAME }}:${VERSION}" >> release_notes.md
echo "# 🐳 From Docker Hub" >> release_notes.md
echo "docker pull ${DOCKERHUB_IMAGE}:${VERSION}" >> release_notes.md
echo "\`\`\`" >> release_notes.md
echo "" >> release_notes.md
echo "🔗 [View on GitHub Releases](https://github.com/${{ github.repository }}/releases/tag/v${VERSION})" >> release_notes.md
- name: 🏷️ Create GitHub Release
uses: softprops/action-gh-release@v2

View File

@@ -15,10 +15,34 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- 🔄 Automatic relay configuration updates
- 🧪 Enhanced integration testing suite
---
## [1.0.6] - 2025-11-06
🧠 Stability improvements, enhanced IPv6 diagnostics, and dashboard optimizations.
🐳 Migrated base image **back to Alpine 3.22.2** for improved compatibility and reproducible builds.
### ✨ Added
- 🧩 IPv6 fallback logic for network diagnostics
- 🧱 Automatic validation of local interfaces in health checks
### 🧰 Improvements
- 🪶 Reduced container image size by optimizing dependencies
- 🧹 Cleaned redundant startup logs and debug lines
- ⚙️ Improved build consistency across architectures
### 🐛 Fixed
- 🔧 Resolved IPv6 “no address” false negatives
- 🧱 Addressed rare validation timeout under heavy load
---
## [1.0.5] - 2025-11-06
🐳 Downgrade base image from Alpine 3.22.2 to 3.21.5
---
## [1.0.4] - 2025-11-06
### ✨ Major Additions
@@ -84,6 +108,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
* Version bump to **v1.0.4** across all modules and build metadata
* Preflight diagnostics now surface partial network success even if Tor metrics endpoints are unreachable
---
## [1.0.3] - 2025-11-06
### 🚀 CI/CD & Build System
@@ -385,11 +411,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## 🔖 Version Support
| Version | Status | Support Level |
|---------|--------|---------------|
| **1.0.3** | 🟢 🛡️ **Active** | Full support (current stable) |
| **1.0.2** | 🟢 🛡️ **Active** | Full support until v1.1.0 |
| **1.0.1** | 🟡 🔧 **Maintenance** | Security + critical fixes only |
| **1.0.0** | 🟠 ⚠️ **Legacy** | Security patches only - upgrade recommended |
|----------|---------|----------------|
| **1.0.6** | 🟢 🛡️ **Active** | Full support (current stable) |
| **1.0.5** | 🟢 🛡️ **Active** | Full support until v1.1.0 |
| **1.0.4** | 🟡 🔧 **Maintenance** | Security + critical fixes only |
| **1.0.3** | 🟠 ⚠️ **Legacy** | Security patches only upgrade recommended |
### 📋 Support Legend
@@ -402,11 +428,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## 🔗 Release Links
[1.0.3]: https://github.com/r3bo0tbx1/tor-guard-relay/releases/tag/v1.0.3
[1.0.2]: https://github.com/r3bo0tbx1/tor-guard-relay/releases/tag/v1.0.2
[1.0.1]: https://github.com/r3bo0tbx1/tor-guard-relay/releases/tag/v1.0.1
[1.0.0]: https://github.com/r3bo0tbx1/tor-guard-relay/releases/tag/v1.0.0
[Unreleased]: https://github.com/r3bo0tbx1/tor-guard-relay/compare/v1.0.3...HEAD
[1.0.6]: https://github.com/r3bo0tbx1/tor-guard-relay/releases/tag/v1.0.6
[1.0.5]: https://github.com/r3bo0tbx1/tor-guard-relay/releases/tag/v1.0.5
[1.0.4]: https://github.com/r3bo0tbx1/tor-guard-relay/releases/tag/v1.0.4
[1.0.3]: https://github.com/r3bo0tbx1/tor-guard-relay/releases/tag/v1.0.3
[1.0.2]: https://github.com/r3bo0tbx1/tor-guard-relay/releases/tag/v1.0.2
[1.0.1]: https://github.com/r3bo0tbx1/tor-guard-relay/releases/tag/v1.0.1
[1.0.0]: https://github.com/r3bo0tbx1/tor-guard-relay/releases/tag/v1.0
[Unreleased]: https://github.com/r3bo0tbx1/tor-guard-relay/compare/v1.0.6...HEAD
---

View File

@@ -1,10 +1,10 @@
# syntax=docker/dockerfile:1.7
# ============================================================================
# Tor Guard Relay - Hardened relay with diagnostics and auto-healing
# Base: Alpine 3.21.5 | Multi-arch: amd64, arm64
# Base: Alpine 3.22.2 | Multi-arch: amd64, arm64
# ============================================================================
FROM alpine:3.21.5 AS builder
FROM alpine:3.22.2 AS builder
# Build arguments
ARG BUILD_DATE
@@ -23,7 +23,7 @@ LABEL maintainer="rE-Bo0t.bx1 <r3bo0tbx1@brokenbotnet.com>" \
org.opencontainers.image.vendor="r3bo0tbx1" \
org.opencontainers.image.authors="rE-Bo0t.bx1 <r3bo0tbx1@brokenbotnet.com>" \
org.opencontainers.image.url="https://github.com/r3bo0tbx1/tor-guard-relay" \
org.opencontainers.image.base.name="docker.io/library/alpine:3.21.5" \
org.opencontainers.image.base.name="docker.io/library/alpine:3.22.2" \
org.opencontainers.image.revision="${TARGETARCH}"
# ============================================================================
@@ -41,11 +41,11 @@ RUN set -eux \
bash=5.2.37-r0 \
tini=0.19.0-r3 \
curl=8.14.1-r2 \
jq=1.7.1-r0 \
grep=3.11-r0 \
coreutils=9.5-r2 \
bind-tools=9.18.41-r0 \
netcat-openbsd=1.226.1.1-r0 \
jq=1.8.0-r0 \
grep=3.12-r0 \
coreutils=9.7-r1 \
bind-tools=9.20.15-r0 \
netcat-openbsd=1.229.1-r0 \
&& mkdir -p /var/lib/tor /var/log/tor /run/tor \
&& chown -R tor:tor /var/lib/tor /var/log/tor /run/tor \
&& chmod 700 /var/lib/tor \