feat: switch to alpine and add arm32 image

This commit is contained in:
pommee
2025-06-06 12:20:18 +02:00
parent b0a5311f8e
commit 26f8d00455
5 changed files with 22 additions and 28 deletions
+1 -2
View File
@@ -55,5 +55,4 @@ jobs:
- name: Build and push Docker image
if: success()
run: |
LATEST_VERSION=$(git describe --tags --abbrev=0 | sed 's/^v//')
VERSION=$LATEST_VERSION make publish
make publish
+12 -20
View File
@@ -1,34 +1,26 @@
FROM ubuntu:22.04
FROM alpine:3.22
ARG GOAWAY_VERSION=""
ARG DNS_PORT=53
ARG WEBSITE_PORT=8080
ARG GOAWAY_VERSION=""
ENV DNS_PORT=${DNS_PORT}
ENV WEBSITE_PORT=${WEBSITE_PORT}
ENV DNS_PORT=${DNS_PORT} WEBSITE_PORT=${WEBSITE_PORT}
RUN apt-get update && \
apt-get install -y curl passwd jq sudo net-tools && \
rm -rf /var/lib/apt/lists/*
COPY installer.sh ./
RUN useradd -m -s /bin/bash -G sudo appuser && \
echo "appuser ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
RUN apk add --no-cache curl jq bash ca-certificates && \
adduser -D -s /bin/bash appuser && \
./installer.sh $GOAWAY_VERSION && \
mv /root/.local/bin/goaway /home/appuser/goaway && \
chown -R appuser:appuser /home/appuser && \
rm -rf /var/cache/apk/* /tmp/* /var/tmp/* /root/.cache /root/.local installer.sh
WORKDIR /home/appuser
COPY updater.sh /home/appuser/updater.sh
RUN chmod +x /home/appuser/updater.sh
RUN curl https://raw.githubusercontent.com/pommee/goaway/main/installer.sh | sh /dev/stdin $GOAWAY_VERSION && \
mv /root/.local/bin/goaway /home/appuser/goaway && \
chmod +x /home/appuser/goaway
COPY start.sh /home/appuser/start.sh
RUN chmod +x /home/appuser/start.sh
RUN chown -R appuser:appuser /home/appuser
COPY updater.sh start.sh ./
EXPOSE ${DNS_PORT}/tcp ${DNS_PORT}/udp ${WEBSITE_PORT}/tcp
USER appuser
CMD ["/home/appuser/start.sh"]
CMD ["./start.sh"]
+4 -4
View File
@@ -2,16 +2,16 @@
DNS_PORT = $(or $(GOAWAY_PORT),53)
WEBSITE_PORT = $(or $(GOAWAY_WEBSITE_PORT),8080)
LATEST_VERSION = $(shell git describe --tags --abbrev=0 | sed 's/^v//')
publish:
docker buildx create --name multiarch-builder --use
docker buildx build \
--platform linux/amd64,linux/arm64/v8 \
--tag pommee/goaway:${VERSION} \
--platform linux/amd64,linux/arm64/v8,linux/arm/v7 \
--tag pommee/goaway:${LATEST_VERSION} \
--tag pommee/goaway:latest \
--build-arg GOAWAY_VERSION=${VERSION} \
--build-arg GOAWAY_VERSION=${LATEST_VERSION} \
--push \
.
+5 -2
View File
@@ -7,10 +7,13 @@ githubUrl="https://github.com"
executable_folder=$(eval echo "~/.local/bin")
get_arch() {
case $(uname -m) in
ARCH=$(uname -m)
echo "Parsing architecture: $ARCH" >&2
case $ARCH in
"x86_64" | "amd64" ) echo "amd64" ;;
"i386" | "i486" | "i586") echo "386" ;;
"aarch64" | "arm64" | "arm") echo "arm64" ;;
"aarch64" | "arm64") echo "arm64" ;;
"armv7l") echo "armv7" ;;
"mips64el") echo "mips64el" ;;
"mips64") echo "mips64" ;;
"mips") echo "mips" ;;
Regular → Executable
View File