refactor: drop linux ppc64le/s390x from alpine and scratch docker (#309)
The SWS binaries for ppc64le (powerpc64le-unknown-linux-gnu) and
s590x (s390x-unknown-linux-gnu) are dynamically linked so
it does **not** make so much sense to deliver them with either the
Alpine (musl) or the Scratch images (they even do not work properly as
of writing).
So we remove those two from the SWS Alpine and Scratch Docker image
variants to avoid misunderstandings or future issues.
The Debian Docker image should be preferred instead, either linux/ppc64le
or linux/s390x respectively.
This resolves #308
Diff
.github/workflows/devel.docker.yml | 2 --
.github/workflows/release.docker.yml | 4 ++--
docker/alpine/Dockerfile | 12 ++----------
docs/content/features/docker.md | 4 ++--
4 files changed, 6 insertions(+), 16 deletions(-)
@@ -29,8 +29,6 @@ jobs:
- linux/arm64
- linux/arm/v7
- linux/arm/v6
- linux/ppc64le
- linux/s390x
runs-on: ubuntu-22.04
services:
registry:
@@ -59,7 +59,7 @@ jobs:
with:
push: true
context: .
platforms: linux/amd64,linux/arm64,linux/386,linux/arm/v7,linux/arm/v6,linux/ppc64le,linux/s390x
platforms: linux/amd64,linux/arm64,linux/386,linux/arm/v7,linux/arm/v6
file: ./docker/alpine/Dockerfile
tags: ${{ steps.meta_alpine.outputs.tags }}
build-args: |
@@ -177,7 +177,7 @@ jobs:
with:
push: true
context: .
platforms: linux/amd64,linux/arm64,linux/386,linux/arm/v7,linux/arm/v6,linux/ppc64le,linux/s390x
platforms: linux/amd64,linux/arm64,linux/386,linux/arm/v7,linux/arm/v6
file: ./docker/scratch/Dockerfile
tags: ${{ steps.meta_scratch.outputs.tags }}
build-args: |
@@ -13,8 +13,6 @@ RUN set -ex; \
"linux/386") target='i686-unknown-linux-musl' ;; \
"linux/arm/v7") target='armv7-unknown-linux-musleabihf' ;; \
"linux/arm/v6") target='arm-unknown-linux-musleabihf' ;; \
"linux/ppc64le") target='powerpc64le-unknown-linux-gnu' ;; \
"linux/s390x") target='s390x-unknown-linux-gnu' ;; \
*) echo >&2 "error: unsupported $TARGETPLATFORM architecture"; exit 1 ;; \
esac; \
wget --quiet -O /tmp/static-web-server.tar.gz "https://github.com/static-web-server/static-web-server/releases/download/v${SERVER_VERSION}/static-web-server-v${SERVER_VERSION}-${target}.tar.gz"; \
@@ -27,14 +25,8 @@ RUN set -ex \
&& echo "Testing Docker image..." \
&& uname -a \
&& cat /etc/os-release \
&& case "$TARGETPLATFORM" in \
**ppc64*|*s390x*) \
echo "warn: can not run sws binary on $TARGETPLATFORM architecture" ;; \
*) \
static-web-server --version; \
static-web-server --help; \
;; \
esac \
&& static-web-server --version \
&& static-web-server --help \
&& file /usr/local/bin/static-web-server \
&& true
@@ -15,8 +15,8 @@ All Docker images are [Multi-Arch](https://www.docker.com/blog/how-to-rapidly-bu
- `linux/arm/v6`
- `linux/arm/v7`
- `linux/arm64`
- `linux/ppc64le`
- `linux/s390x`
- `linux/ppc64le` (Debian only)
- `linux/s390x` (Debian only)
!!! tip "SWS statically-linked binary"
All the Docker images use the SWS statically-linked binary, meaning that the binary is highly optimized, performant, and dependency-free thanks to [musl libc](https://www.musl-libc.org/).