forked from decred/dcrd
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDockerfile.alpine
55 lines (46 loc) · 1.26 KB
/
Dockerfile.alpine
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
47
48
49
50
51
52
53
54
55
# Build image
FROM golang:1.15
#
# NOTE: The RPC server listens on localhost by default.
# If you require access to the RPC server,
# rpclisten should be set to an empty value.
#
# NOTE: When running simnet, you may not want to preserve
# the data and logs. This can be achieved by specifying
# a location outside the default ~/.dcrd. For example:
# rpclisten=
# simnet=1
# datadir=~/simnet-data
# logdir=~/simnet-logs
#
# Example testnet instance with RPC server access:
# $ mkdir -p /local/path/dcrd
#
# Place a dcrd.conf into a local directory, i.e. /var/dcrd
# $ mv dcrd.conf /var/dcrd
#
# Verify basic configuration
# $ cat /var/dcrd/dcrd.conf
# rpclisten=
# testnet=1
#
# Build the docker image
# $ docker build -t user/dcrd -f Dockerfile.alpine .
#
# Run the docker image, mapping the testnet dcrd RPC port.
# $ docker run -d --rm -p 127.0.0.1:19109:19109 -v /var/dcrd:/root/.dcrd user/dcrd
#
WORKDIR /go/src/github.com/decred/dcrd
COPY . .
RUN CGO_ENABLED=0 GOOS=linux GO111MODULE=on go install . ./cmd/...
# Production image
FROM alpine:3.10.1
RUN apk add --no-cache ca-certificates
COPY --from=0 /go/bin/* /bin/
# mainnet
EXPOSE 9108 9109
# testnet
EXPOSE 19108 19109
# simnet
EXPOSE 18555 19556
CMD [ "dcrd" ]