This project contains all sources to build the container image git.cryptic.systems/volker.raschek/build-image. The
primary goal of the image is only to provide an environment to compile source code for go or rust and package
compiled binaries as PKG for Arch Linux or as RPM for RHEL based distributions.
Import private gpg key via GPG_KEY. The private key must be escaped to import the key inside the container image
correctly. For example:
GPG_FPR=YOUR_GPG_FINGERPRINT
GPG_KEY=$(gpg --armor --export-secret-keys ${GPG_FPR} | cat -e | sed -e 's/\$/\\n/g' -e 's/^[ \t]*//g')
The makepkg.conf configuration is composed from the environment variables with the prefix MAKEPKG_. Below are some
examples:
MAKEPKG_PACKAGER="Hugo McKinnock <[email protected]>"
MAKEPKG_GPGKEY="0123456789"
MAKEPKG_PKGEXT=.pkg.tar.zst"
Import private ssh key via SSH_KEY. The private key must be escaped to import the key inside the container image
correctly. For example:
SSH_KEY=$(cat -e ${HOME}/.ssh/id_rsa | sed -e 's/\$/\\n/g')
To use this image for building golang applications execute this in your root folder of your go project.
$ docker run \
--rm \
--volume ${PWD}:/workspace \
git.cryptic.systems/volker.raschek/build-image:latest \
go build
With the following example will be an package be build for Arch Linux. Execute the commond in the root directory of the
project, where the PKGBUILD file is located.
$ docker run \
--env MAKEPKG_PACKAGER="Max Mustermann <[email protected]" \
--rm \
--volume ${PWD}:/workspace \
git.cryptic.systems/volker.raschek/build-image:latest \
makepkg
If you want to compile instead go rust sourcecode, than you can do it similar to the golang example.
$ docker run \
--rm \
--volume ${PWD}:/workspace \
git.cryptic.systems/volker.raschek/build-image:latest \
cargo build --release
Content type
Image
Digest
sha256:428c7c12b…
Size
999.5 MB
Last updated
over 3 years ago
docker pull volkerraschek/build-image