2019-03-19 11:50:03 +01:00
# WEBUI
2019-10-14 17:18:04 +02:00
FROM node:12.11 as webui
2019-03-19 11:50:03 +01:00
ENV WEBUI_DIR /src/webui
RUN mkdir -p $WEBUI_DIR
COPY ./webui/ $WEBUI_DIR /
WORKDIR $WEBUI_DIR
2022-03-03 18:08:07 +01:00
RUN yarn install
RUN yarn build
2019-03-19 11:50:03 +01:00
# BUILD
2023-08-16 17:50:06 +02:00
FROM golang:1.21-alpine as gobuild
2019-03-19 11:50:03 +01:00
2022-03-03 15:42:08 +01:00
RUN apk --no-cache --no-progress add git mercurial bash gcc musl-dev curl tar ca-certificates tzdata \
2019-04-01 16:48:08 +02:00
&& update-ca-certificates \
&& rm -rf /var/cache/apk/*
2019-03-19 11:50:03 +01:00
2020-09-16 15:46:04 +02:00
WORKDIR /go/src/github.com/traefik/traefik
2019-08-11 12:20:53 +02:00
# Download go modules
COPY go.mod .
COPY go.sum .
RUN GO111MODULE = on GOPROXY = https://proxy.golang.org go mod download
2020-09-16 15:46:04 +02:00
COPY . /go/src/github.com/traefik/traefik
2019-03-19 11:50:03 +01:00
2021-09-15 12:10:06 +02:00
RUN rm -rf /go/src/github.com/traefik/traefik/webui/static/
COPY --from= webui /src/webui/static/ /go/src/github.com/traefik/traefik/webui/static/
2019-03-19 11:50:03 +01:00
2019-03-19 12:24:04 +01:00
RUN ./script/make.sh generate binary
2019-03-19 11:50:03 +01:00
## IMAGE
2021-08-30 11:38:12 +02:00
FROM alpine:3.14
2019-11-12 10:44:05 +01:00
RUN apk --no-cache --no-progress add bash curl ca-certificates tzdata \
&& update-ca-certificates \
&& rm -rf /var/cache/apk/*
2019-03-19 11:50:03 +01:00
2020-09-16 15:46:04 +02:00
COPY --from= gobuild /go/src/github.com/traefik/traefik/dist/traefik /
2019-03-19 11:50:03 +01:00
EXPOSE 80
VOLUME [ "/tmp" ]
ENTRYPOINT [ "/traefik" ]