mirror of
https://github.com/kaspanet/kaspad.git
synced 2025-10-13 16:49:24 +00:00

* [DEV-167] Created Dockerfile, dockerignore, and docker-compose. * [DEV-167] Updated docker-compose to use remote image. * [DEV-167] Added --addrindex to docker-compose. * [DEV-167] Switched to testnet and plugged in the correct address. * [DEV-167] Removed the third and fourth nodes from docker-compose. * [DEV-167] Exposed RPC port, added rpcuser and rpcpass. * [DEV-167] Wrangled RPC stuff into shape. Moved docker stuff into btcd/docker. * [DEV-167] Moved dockerignore back to root. Corrected path for rpc.cert and rpc.key. * [DEV-167] Added Jenkins job stuff. * [DEV-167] Added deploy.sh. * [DEV-167] Removed .travis.yaml and a couple of files that shouldn't be in this branch.
43 lines
1.1 KiB
Docker
43 lines
1.1 KiB
Docker
# -- multistage docker build: stage #1: build stage
|
|
FROM golang:1.10-alpine AS build
|
|
|
|
RUN mkdir -p /go/src/github.com/daglabs/btcd
|
|
|
|
WORKDIR /go/src/github.com/daglabs/btcd
|
|
|
|
RUN apk add --no-cache curl git openssh binutils gcc musl-dev
|
|
RUN curl https://raw.githubusercontent.com/golang/dep/master/install.sh | sh
|
|
RUN go get -u github.com/golang/lint/golint \
|
|
github.com/kisielk/errcheck \
|
|
github.com/opennota/check/cmd/aligncheck \
|
|
github.com/opennota/check/cmd/structcheck \
|
|
github.com/opennota/check/cmd/varcheck
|
|
|
|
COPY ./Gopkg.* ./
|
|
|
|
RUN dep ensure -v --vendor-only
|
|
|
|
COPY . .
|
|
|
|
RUN gofmt -d -e -s . \
|
|
&& go tool vet -all . \
|
|
&& golint -set_exit_status . \
|
|
&& aligncheck . \
|
|
&& structcheck -e . \
|
|
&& varcheck -e .
|
|
RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o btcd .
|
|
RUN strip btcd
|
|
|
|
RUN go test ./...
|
|
|
|
# --- multistage docker build: stage #2: runtime image
|
|
FROM alpine
|
|
WORKDIR /app
|
|
|
|
RUN apk add --no-cache ca-certificates tini
|
|
|
|
COPY --from=build /go/src/github.com/daglabs/btcd/btcd /app/
|
|
COPY --from=build /go/src/github.com/daglabs/btcd/version.txt /app/
|
|
|
|
USER nobody
|
|
ENTRYPOINT [ "/sbin/tini", "--" ] |