build: Dockerfile for the builder image

This commit is contained in:
Jakob Borg 2020-02-14 10:44:31 +01:00
parent bb375b1aff
commit 3e0241ea31
1 changed files with 26 additions and 0 deletions

26
Dockerfile.builder Normal file
View File

@ -0,0 +1,26 @@
# It's difficult to install snapcraft (the packaging tool) on a non-snap
# distribution such as Debian without running snapd (which doesn't work under
# Docker). We cheat by taking their Docker image and snarfing the resulting
# binaries.
FROM snapcore/snapcraft AS snapcraft
# Otherwise we base on the Go image, which is Debian based.
FROM golang
# The snap stuff, as mentioned, with variables set to let the snapcraft snap play ball
COPY --from=snapcraft /snap /snap
ENV LANG="en_US.UTF-8"
ENV LANGUAGE="en_US:en"
ENV LC_ALL="en_US.UTF-8"
ENV SNAP="/snap/snapcraft/current"
ENV SNAP_NAME="snapcraft"
ENV SNAP_ARCH="amd64"
ENV PATH="$PATH:/snap/bin"
# FPM to build Debian packages
RUN apt-get update && apt-get install -y --no-install-recommends \
locales rubygems ruby-dev \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/* \
&& gem install --no-ri --no-rdoc fpm \
&& locale-gen en_US.UTF-8