This repository has been archived by the owner on Aug 9, 2021. It is now read-only.
-
-
Notifications
You must be signed in to change notification settings - Fork 5
/
Dockerfile.build
46 lines (38 loc) · 1.54 KB
/
Dockerfile.build
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
###############################################################################
#
# This Dockerfile should only be used to cross-compile capsulecd for various
# OS's and Architectures. Its massive, and should not be used as a base image
# for your Dockerfiles.
#
# Usable Docker Images and Dockerfiles for different languages are located:
# - https://github.com/AnalogJ/capsulecd-docker
# - https://hub.docker.com/r/analogj/capsulecd
#
# Use `docker pull analogj/capsulecd:<language>`
#
###############################################################################
FROM analogj/libgit2-xgo
MAINTAINER Jason Kulatunga <jason@thesparktree.com>
WORKDIR /go/src/github.com/analogj/capsulecd
ENV PATH="/go/src/github.com/analogj/capsulecd:/go/bin:${PATH}" \
SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt
# Install build tooling.
RUN echo "go version: \
&& go version \
&& apt-get update \
&& apt-get install -y gcc git build-essential binutils curl apt-transport-https ca-certificates pkg-config --no-install-recommends \
&& rm -rf /usr/share/doc && rm -rf /usr/share/man \
&& rm -rf /var/lib/apt/lists/* \
&& apt-get clean
ENV PATH="/go/bin:/usr/local/go/bin:${PATH}" \
GOPATH="/go:${GOPATH}" \
SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt
# ensure go is configured correctly
RUN which go \
&& mkdir -p /go/bin \
&& mkdir -p /go/src \
&& go get -u gopkg.in/alecthomas/gometalinter.v2 \
&& gometalinter.v2 --install
COPY ./ci/capsulecd.sh /scripts/capsulecd.sh
COPY ./ci/development.sh /scripts/development.sh
RUN /scripts/capsulecd.sh