Skip to content
/ builder Public

Build script and Dockerfile to produce the restic binaries

Notifications You must be signed in to change notification settings

restic/builder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This repository contains the build script and Dockerfile used to produce the binaries for each restic release starting at 0.9.3.

Instructions

Note: For more detailed instructions, reference the Reproducible Builds section of the Developer Information.

First, clone (or update) this repo:

$ git clone https://github.com/restic/builder.git

or

$ git pull

Second, pull the base image and build the docker container using the required Go version:

$ GO_VERSION=1.20.3
$ docker pull debian:stable
$ docker build --no-cache -t restic/builder:${GO_VERSION} --build-arg GO_VERSION=${GO_VERSION} .
$ docker tag restic/builder:${GO_VERSION} restic/builder:latest

Maintainers may also publish the new image to Docker hub:

$ docker push restic/builder:${GO_VERSION}
$ docker push restic/builder:latest

Next, download and extract the restic source code.

$ curl -L https://github.com/restic/restic/archive/v0.9.3.tar.gz -O
$ tar -xzvf v0.9.3.tar.gz

Then run the build as follows, mounting the directory with the source code as /restic and putting the resulting files in the directory output:

$ mkdir output
$ docker run --rm --volume "$PWD/restic-0.9.3:/restic" --volume "$PWD/output:/output" restic/builder

Verify Build

If all goes well then you've produced exactly the same binaries as in the official release.

To verify the linux amd64 build for example, run:

$ sha256_restic=3c882962fc07f611a6147ada99c9909770d3e519210fd483cde9609c6bdd900c
$ echo "${sha256_restic} output/restic_linux_amd64.bz2" | sha256sum -c -

Software

The Docker container is based on Debian stable and the official Go compiler is used in the latest released version.

The container has the official Go compiler installed in /usr/local/go.

About

Build script and Dockerfile to produce the restic binaries

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published