diff --git a/.github2/workflows/docker-image-linux.yml b/.github/workflows/docker-image-linux.yml similarity index 64% rename from .github2/workflows/docker-image-linux.yml rename to .github/workflows/docker-image-linux.yml index 224fbfa..ae396a7 100644 --- a/.github2/workflows/docker-image-linux.yml +++ b/.github/workflows/docker-image-linux.yml @@ -1,11 +1,15 @@ name: Create and publish a Docker image for Linux on: - - push - - workflow_dispatch + push: + tags: + - 'v*.*.*' # Run only when version tags are pushed + workflow_dispatch: # Keep manual trigger for testing + env: - REGISTRY: ghcr.io - GITHUBUSER: ${{ github.repository_owner }} - IMAGE_NAME: speedtest-cli + REGISTRY: gitea.sjs.io + GITHUBUSER: ${{ gitea.repository_owner }} + IMAGE_NAME: rocky-dev + jobs: build-and-push-image: runs-on: ubuntu-latest @@ -26,17 +30,19 @@ jobs: uses: docker/login-action@v3 with: registry: ${{ env.REGISTRY }} - username: ${{ github.actor }} - password: ${{ secrets.GITHUB_TOKEN }} + username: ${{ vars.USERNAME }} + password: ${{ secrets.PASS }} - name: Extract metadata for Docker id: meta uses: docker/metadata-action@v5 with: - images: ${{ env.REGISTRY }}/${{ env.GITHUBUSER }}/${{ env.IMAGE_NAME }} + images: ${{ env.REGISTRY }}/${{ vars.USERNAME }}/${{ env.IMAGE_NAME }} tags: | - type=raw,value=latest - type=sha,format=short + type=semver,pattern={{version}} + type=semver,pattern={{major}}.{{minor}} + type=semver,pattern={{major}} + type=raw,value=latest,enable={{is_default_branch}} - name: Build and push both architectures uses: docker/build-push-action@v6 diff --git a/Dockerfile b/Dockerfile index 69b409f..5e78412 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,20 +1,17 @@ -FROM alpine:latest +FROM rockylinux:9 -RUN apk add --no-cache wget ca-certificates tar +RUN dnf update -y && \ + dnf install -y \ + iputils \ + iproute \ + iperf3 \ + net-tools \ + procps-ng \ + wget \ + which \ + vim \ + python3-pip && \ + dnf group install -y "Development Tools" && \ + dnf clean all -ARG TARGETARCH - -RUN if [ "$TARGETARCH" = "amd64" ]; then \ - ARCH="x86_64"; \ - elif [ "$TARGETARCH" = "arm64" ]; then \ - ARCH="aarch64"; \ - fi && \ - wget -q https://install.speedtest.net/app/cli/ookla-speedtest-1.2.0-linux-${ARCH}.tgz && \ - tar -xzf ookla-speedtest-1.2.0-linux-${ARCH}.tgz -C /usr/bin && \ - rm ookla-speedtest-1.2.0-linux-${ARCH}.tgz && \ - chmod +x /usr/bin/speedtest - -COPY entrypoint.sh /entrypoint.sh -RUN chmod +x /entrypoint.sh - -ENTRYPOINT ["/entrypoint.sh"] \ No newline at end of file +CMD ["/bin/bash"] \ No newline at end of file