diff --git a/.github/workflows/armv6.yaml b/.github/workflows/armv6.yaml index 55c546d..bf7ac03 100644 --- a/.github/workflows/armv6.yaml +++ b/.github/workflows/armv6.yaml @@ -24,6 +24,6 @@ jobs: - name: Available platforms run: echo ${{ steps.buildx.outputs.platforms }} - name: Run Buildx - run: docker buildx build --platform linux/arm/v6 -t kerberos/base:armv6-$(echo $GITHUB_SHA | cut -c1-7) -f Dockerfile-armv6 --push . + run: docker buildx build --platform linux/arm/v6 -t kerberos/base:armv6-$(echo $GITHUB_SHA | cut -c1-7) --push . - name: Append manifest run: docker buildx imagetools create --append -t kerberos/base:$(echo $GITHUB_SHA | cut -c1-7) kerberos/base:armv6-$(echo $GITHUB_SHA | cut -c1-7) \ No newline at end of file diff --git a/.github/workflows/armv7.yaml b/.github/workflows/armv7.yaml index 35ca0b5..34e029b 100644 --- a/.github/workflows/armv7.yaml +++ b/.github/workflows/armv7.yaml @@ -24,6 +24,6 @@ jobs: - name: Available platforms run: echo ${{ steps.buildx.outputs.platforms }} - name: Run Buildx - run: docker buildx build --platform linux/arm/v7 -t kerberos/base:armv7-$(echo $GITHUB_SHA | cut -c1-7) -f Dockerfile-armv7 --push . + run: docker buildx build --platform linux/arm/v7 -t kerberos/base:armv7-$(echo $GITHUB_SHA | cut -c1-7) --push . - name: Append manifest run: docker buildx imagetools create --append -t kerberos/base:$(echo $GITHUB_SHA | cut -c1-7) kerberos/base:armv7-$(echo $GITHUB_SHA | cut -c1-7) \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index ade2a75..2e5412c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,5 @@ -FROM debian:bookworm AS builder -LABEL Author=Kerberos.io +FROM golang:1.24.5-bullseye +LABEL AUTHOR=uug.ai RUN apt-get update && apt-get upgrade -y && apt-get install -y wget build-essential \ cmake libc-ares-dev uuid-dev daemon libwebsockets-dev git \ @@ -20,7 +20,7 @@ RUN git clone https://code.videolan.org/videolan/x264.git && \ # Clone and build FFMpeg & OpenCV RUN git clone https://github.com/FFmpeg/FFmpeg && \ - cd FFmpeg && git checkout n6.0.1 && \ + cd FFmpeg && git checkout n7.0.3 && \ ./configure --prefix=/usr/local --target-os=linux --enable-nonfree \ --extra-ldflags="-latomic" \ --enable-avfilter \ @@ -30,20 +30,4 @@ RUN git clone https://github.com/FFmpeg/FFmpeg && \ --enable-static --disable-shared && \ make && \ make install && \ - cd .. && rm -rf FFmpeg - -############################ -# Build Golang - -ENV GOROOT=/usr/local/go -ENV GOPATH=/go -ENV PATH=$GOPATH/bin:$GOROOT/bin:$PATH - -RUN ARCH=$(uname -m) && \ - ARCH=$([ "$(uname -m)" = "armv7l" ] && echo "armv6l" || echo $ARCH) && \ - ARCH=$([ "$(uname -m)" = "x86_64" ] && echo "amd64" || echo $ARCH) && \ - ARCH=$([ "$(uname -m)" = "aarch64" ] && echo "arm64" || echo $ARCH) && \ - wget "https://dl.google.com/go/go1.24.2.linux-$ARCH.tar.gz" && \ - tar -xvf "go1.24.2.linux-$ARCH.tar.gz" && \ - rm -rf go1.24.2.linux-$ARCH.tar.gz && \ - mv go /usr/local \ No newline at end of file + cd .. && rm -rf FFmpeg \ No newline at end of file diff --git a/Dockerfile-armv6 b/Dockerfile-armv6 deleted file mode 100644 index 3e636e5..0000000 --- a/Dockerfile-armv6 +++ /dev/null @@ -1,50 +0,0 @@ -FROM balenalib/rpi-raspbian:bullseye-20221229 AS builder - -LABEL Author=Kerberos.io - -RUN apt-get update && apt-get upgrade -y && apt-get install -y wget build-essential \ - cmake libc-ares-dev uuid-dev daemon libwebsockets-dev git \ - cmake wget dh-autoreconf autotools-dev autoconf automake gcc \ - build-essential libtool make ca-certificates nasm tar unzip wget pkg-config - -############################# -# Static build x264 - -RUN git clone https://code.videolan.org/videolan/x264.git && \ - cd x264 && git checkout 0a84d986 && \ - ./configure --prefix=/usr/local --enable-static --enable-pic && \ - make && \ - make install && \ - cd .. && rm -rf x264 - -################################# -# Clone and build FFMpeg & OpenCV - -RUN git clone https://github.com/FFmpeg/FFmpeg && \ - cd FFmpeg && git checkout n6.0.1 && \ - ./configure --prefix=/usr/local --target-os=linux --enable-nonfree \ - --extra-ldflags="-latomic" \ - --enable-avfilter \ - --disable-zlib \ - --enable-gpl \ - --extra-libs=-latomic \ - --enable-static --disable-shared && \ - make && \ - make install && \ - cd .. && rm -rf FFmpeg - -############################ -# Build Golang - -ENV GOROOT=/usr/local/go -ENV GOPATH=/go -ENV PATH=$GOPATH/bin:$GOROOT/bin:$PATH - -RUN ARCH=$(uname -m) && \ - ARCH=$([ "$(uname -m)" = "armv7l" ] && echo "armv6l" || echo $ARCH) && \ - ARCH=$([ "$(uname -m)" = "x86_64" ] && echo "amd64" || echo $ARCH) && \ - ARCH=$([ "$(uname -m)" = "aarch64" ] && echo "arm64" || echo $ARCH) && \ - wget "https://dl.google.com/go/go1.24.2.linux-$ARCH.tar.gz" && \ - tar -xvf "go1.24.2.linux-$ARCH.tar.gz" && \ - rm -rf go1.24.2.linux-$ARCH.tar.gz && \ - mv go /usr/local \ No newline at end of file diff --git a/Dockerfile-armv7 b/Dockerfile-armv7 deleted file mode 100644 index 3e2abd1..0000000 --- a/Dockerfile-armv7 +++ /dev/null @@ -1,50 +0,0 @@ -FROM balenalib/raspberrypi3:20221215 AS builder - -LABEL Author=Kerberos.io - -RUN apt-get update && apt-get upgrade -y && apt-get install -y wget build-essential \ - cmake libc-ares-dev uuid-dev daemon libwebsockets-dev git \ - cmake wget dh-autoreconf autotools-dev autoconf automake gcc \ - build-essential libtool make ca-certificates nasm tar unzip wget pkg-config - -############################# -# Static build x264 - -RUN git clone https://code.videolan.org/videolan/x264.git && \ - cd x264 && git checkout 0a84d986 && \ - ./configure --prefix=/usr/local --enable-static --enable-pic && \ - make && \ - make install && \ - cd .. && rm -rf x264 - -################################# -# Clone and build FFMpeg & OpenCV - -RUN git clone https://github.com/FFmpeg/FFmpeg && \ - cd FFmpeg && git checkout n6.0.1 && \ - ./configure --prefix=/usr/local --target-os=linux --enable-nonfree \ - --extra-ldflags="-latomic" \ - --enable-avfilter \ - --disable-zlib \ - --enable-gpl \ - --extra-libs=-latomic \ - --enable-static --disable-shared && \ - make && \ - make install && \ - cd .. && rm -rf FFmpeg - -############################ -# Build Golang - -ENV GOROOT=/usr/local/go -ENV GOPATH=/go -ENV PATH=$GOPATH/bin:$GOROOT/bin:$PATH - -RUN ARCH=$(uname -m) && \ - ARCH=$([ "$(uname -m)" = "armv7l" ] && echo "armv6l" || echo $ARCH) && \ - ARCH=$([ "$(uname -m)" = "x86_64" ] && echo "amd64" || echo $ARCH) && \ - ARCH=$([ "$(uname -m)" = "aarch64" ] && echo "arm64" || echo $ARCH) && \ - wget "https://dl.google.com/go/go1.24.2.linux-$ARCH.tar.gz" && \ - tar -xvf "go1.24.2.linux-$ARCH.tar.gz" && \ - rm -rf go1.24.2.linux-$ARCH.tar.gz && \ - mv go /usr/local \ No newline at end of file