Update Dockerfile, add .dockerignore
This commit is contained in:
parent
199be20717
commit
fafda283b1
50
.dockerignore
Normal file
50
.dockerignore
Normal file
|
@ -0,0 +1,50 @@
|
|||
# Binaries for programs and plugins
|
||||
*.exe
|
||||
*.dll
|
||||
*.so
|
||||
*.dylib
|
||||
.idea/*
|
||||
|
||||
# Test binary, build with `go test -c`
|
||||
*.test
|
||||
|
||||
# Output of the go coverage tool, specifically when used with LiteIDE
|
||||
*.out
|
||||
|
||||
# Project-local glide cache, RE: https://github.com/Masterminds/glide/issues/736
|
||||
.glide/
|
||||
|
||||
# dep related files and folders
|
||||
/vendor*
|
||||
|
||||
# ignore logfiles (/* so the .gitkeep override works)
|
||||
/logs/*
|
||||
|
||||
# ignore configuration file
|
||||
/config.yml
|
||||
|
||||
# Ignore Vagrant stuff
|
||||
/.vagrant
|
||||
|
||||
# Builds by gox
|
||||
/build
|
||||
|
||||
# Go Coverage tool
|
||||
/coverage.out
|
||||
|
||||
# The built executable
|
||||
wings
|
||||
wings.exe
|
||||
|
||||
# IDE/Editor files (VS Code)
|
||||
/.vscode
|
||||
|
||||
# test files
|
||||
test_*/
|
||||
|
||||
# Keep all gitkeep files (This needs to stay at the bottom)
|
||||
!.gitkeep
|
||||
debug
|
||||
.DS_Store
|
||||
*.pprof
|
||||
*.pdf
|
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -45,7 +45,6 @@ test_*/
|
|||
# Keep all gitkeep files (This needs to stay at the bottom)
|
||||
!.gitkeep
|
||||
debug
|
||||
data/.states.json
|
||||
.DS_Store
|
||||
*.pprof
|
||||
*.pdf
|
49
Dockerfile
49
Dockerfile
|
@ -1,11 +1,40 @@
|
|||
FROM golang:1.15-alpine
|
||||
ARG VERSION="develop"
|
||||
COPY . /go/wings/
|
||||
WORKDIR /go/wings/
|
||||
RUN apk add --no-cache upx \
|
||||
&& CGO_ENABLED=0 go build -ldflags="-s -w -X github.com/pterodactyl/wings/system.Version=${VERSION}" \
|
||||
&& upx wings
|
||||
# Stage 1 (Build)
|
||||
FROM golang:1.15-alpine3.12 AS builder
|
||||
|
||||
FROM alpine:latest
|
||||
COPY --from=0 /go/wings/wings /usr/bin/
|
||||
CMD ["wings", "--config", "/etc/pterodactyl/config.yml"]
|
||||
ARG VERSION
|
||||
|
||||
RUN apk add --update --no-cache git=2.26.2-r0 make=4.3-r0 upx=3.96-r0
|
||||
|
||||
WORKDIR /app/
|
||||
|
||||
COPY go.mod go.sum /app/
|
||||
RUN go mod download
|
||||
|
||||
COPY . /app/
|
||||
|
||||
RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build \
|
||||
-ldflags="-s -w -X github.com/pterodactyl/wings/system.Version=$VERSION" \
|
||||
-v \
|
||||
-trimpath \
|
||||
-o wings \
|
||||
wings.go
|
||||
|
||||
RUN upx wings
|
||||
|
||||
# --------------------------------------- #
|
||||
|
||||
# Stage 2 (Final)
|
||||
FROM busybox:1.32.0
|
||||
|
||||
LABEL org.opencontainers.image.title="Wings"
|
||||
LABEL org.opencontainers.image.version="v1.1.3"
|
||||
LABEL org.opencontainers.image.description="Server control layer for Pterodactyl"
|
||||
LABEL org.opencontainers.image.url="https://pterodactyl.io"
|
||||
LABEL org.opencontainers.image.documentation="https://pterodactyl.io/project/introduction.html"
|
||||
LABEL org.opencontainers.image.vendor="Pterodactyl Software"
|
||||
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/wings"
|
||||
LABEL org.opencontainers.image.licenses="MIT"
|
||||
|
||||
COPY --from=builder /app/wings /usr/bin/
|
||||
|
||||
CMD [ "wings", "--config", "/etc/pterodactyl/config.yml" ]
|
||||
|
|
Loading…
Reference in New Issue
Block a user