adbd49ddc6
## Issue Addressed Resolves #1512 ## Proposed Changes - Adds a new docker Github Actions workflow - Removes the Dockerhub hook - Adds a new Dockerfile for use with pre-existing cross-compiled binaries - on pushes to `unstable` - builds an ARM64 image and tags it `latest-arm64-unstable` - builds an AMD64 image and tags it `latest-amd64-unstable` - builds an multiarch image by creating a manifest list referencing the prior two images and tags it `latest-unstable` - on pushes to `stable` - builds an ARM64 image and tags it `latest-arm64` - builds an AMD64 image and tags it `latest-amd64` - builds an multiarch image by creating a manifest list referencing the prior two images and tags it `latest` ## Additional Info - for ARM64, first `cross` is used to cross compile the `lighthouse` and `lcli` binaries, then `docker buildx` is installed to actually build the docker image for the correct target platform. The image build pretty much just copies the binaries from local into the docker image (thanks @michaelsproul :) ) - The AMD64 and ARM64 builds run in parallel, in total it's been taking around 45mins on a local runner - This PR does **not** cover version tags on docker images at the moment Co-authored-by: realbigsean <seananderson33@gmail.com>
11 lines
421 B
Docker
11 lines
421 B
Docker
# This image is meant to enable cross-architecture builds.
|
|
# It assumes the lighthouse binary has already been
|
|
# compiled for `$TARGETPLATFORM` and moved to `./bin`.
|
|
FROM --platform=$TARGETPLATFORM debian:buster-slim
|
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
|
libssl-dev \
|
|
ca-certificates \
|
|
&& apt-get clean \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
COPY ./bin/lighthouse /usr/local/bin/lighthouse
|