|
1 | | -FROM golang:1.8 |
| 1 | +FROM alpine:3.6 AS wget |
| 2 | +RUN apk add --no-cache ca-certificates wget tar |
2 | 3 |
|
3 | | -ENV DOCKER_VERSION 17.04.0-ce |
4 | | -ENV CUBERITE_BUILD 630 |
| 4 | +FROM wget AS docker |
| 5 | +ARG DOCKER_VERSION=17.04.0-ce |
| 6 | +RUN wget -qO- https://get.docker.com/builds/Linux/x86_64/docker-${DOCKER_VERSION}.tgz | \ |
| 7 | + tar -xvz --strip-components=1 -C /bin |
5 | 8 |
|
6 | | -# Copy latest docker client(s) |
7 | | -RUN curl -sSL -o docker.tgz https://get.docker.com/builds/Linux/x86_64/docker-${DOCKER_VERSION}.tgz &&\ |
8 | | - tar -xvf docker.tgz --strip-components=1 -C /bin && rm docker.tgz &&\ |
9 | | - chmod +x /bin/docker-* &&\ |
10 | | - ln -s /bin/docker /bin/docker-${DOCKER_VERSION} |
11 | | - |
12 | | -# Download Cuberite server (Minecraft C++ server) |
| 9 | +FROM wget AS cuberite |
| 10 | +ARG CUBERITE_BUILD=630 |
13 | 11 | WORKDIR /srv |
14 | | -RUN curl "https://builds.cuberite.org/job/Cuberite Linux x64 Master/${CUBERITE_BUILD}/artifact/Cuberite.tar.gz" | tar -xzf - |
| 12 | +RUN wget -qO- "https://builds.cuberite.org/job/Cuberite Linux x64 Master/${CUBERITE_BUILD}/artifact/Cuberite.tar.gz" |\ |
| 13 | + tar -xzf - |
| 14 | + |
| 15 | +FROM golang:1.8 AS dockercraft |
| 16 | +WORKDIR /go/src/github.com/docker/dockercraft |
| 17 | +COPY . . |
| 18 | +RUN go install |
| 19 | + |
| 20 | +FROM debian:jessie |
| 21 | +COPY --from=dockercraft /go/bin/dockercraft /bin |
| 22 | +COPY --from=docker /bin/docker /bin |
| 23 | +COPY --from=cuberite /srv /srv |
15 | 24 |
|
16 | 25 | # Copy Dockercraft config and plugin |
17 | 26 | COPY ./config /srv/Server |
18 | 27 | COPY ./docs/img/logo64x64.png /srv/Server/favicon.png |
19 | 28 | COPY ./Docker /srv/Server/Plugins/Docker |
20 | 29 |
|
21 | | -# Copy Go code and install |
22 | | -WORKDIR /go/src/github.com/docker/dockercraft |
23 | | -COPY . . |
24 | | -RUN go install |
25 | | - |
26 | 30 | EXPOSE 25565 |
27 | | - |
28 | 31 | ENTRYPOINT ["/srv/Server/start.sh"] |
29 | | - |
|
0 commit comments