29 lines
557 B
Docker
29 lines
557 B
Docker
FROM golang:1.22-alpine AS build
|
|
|
|
WORKDIR /app
|
|
COPY . .
|
|
|
|
RUN go mod download
|
|
RUN go build -o /app/local-ip
|
|
|
|
FROM gcr.io/distroless/base-debian12:latest
|
|
|
|
WORKDIR /local-ip
|
|
|
|
COPY --from=build /app/local-ip /local-ip/local-ip
|
|
COPY --from=build /app/http/static /local-ip/http/static
|
|
|
|
VOLUME /local-ip/.lego
|
|
|
|
# DNS
|
|
EXPOSE 53/udp
|
|
# HTTP
|
|
EXPOSE 80/tcp
|
|
# HTTPS
|
|
EXPOSE 443/tcp
|
|
|
|
USER root
|
|
|
|
# TODO: make these configurable too
|
|
CMD ["/local-ip/local-ip", "--domain", "local-ip.sh", "--email", "admin@local-ip.sh", "--nameservers", "ns1.local-ip.sh.,ns2.local-ip.sh."]
|