58 lines
1.4 KiB
Docker
58 lines
1.4 KiB
Docker
|
|
# syntax=docker/dockerfile:1.3
|
||
|
|
# Postgres Backend: openbmp/whois
|
||
|
|
#
|
||
|
|
# Copyright (c) 2022 Cisco Systems, Inc. and others. All rights reserved.
|
||
|
|
#
|
||
|
|
# BUILD:
|
||
|
|
# tar -c -C ../../ ./obmp-whois ./obmp-docker/whois \
|
||
|
|
# | docker buildx build --platform linux/amd64 --progress=plain \
|
||
|
|
# -f obmp-docker/whois/Dockerfile -t openbmp/whois:2.1.0 -
|
||
|
|
|
||
|
|
# -----------------------------------------------
|
||
|
|
# stage: Build
|
||
|
|
# -----------------------------------------------
|
||
|
|
FROM golang:alpine AS build
|
||
|
|
|
||
|
|
WORKDIR /ws
|
||
|
|
|
||
|
|
COPY obmp-whois/ /ws
|
||
|
|
|
||
|
|
ENV GO111MODULE=on
|
||
|
|
ENV GCGO_ENABLED=0
|
||
|
|
ENV GOARCH=amd64
|
||
|
|
ENV GOOS=linux
|
||
|
|
|
||
|
|
RUN apk add --no-cache bash git
|
||
|
|
RUN cd /ws && go mod tidy
|
||
|
|
|
||
|
|
# Build the app
|
||
|
|
RUN cd /ws && go build -o obmp-whoisd .
|
||
|
|
|
||
|
|
|
||
|
|
# -----------------------------------------------
|
||
|
|
# stage: Final container
|
||
|
|
# -----------------------------------------------
|
||
|
|
FROM alpine
|
||
|
|
|
||
|
|
COPY --from=build /ws/obmp-whoisd /usr/local/bin/
|
||
|
|
|
||
|
|
WORKDIR /tmp
|
||
|
|
|
||
|
|
# Environment varialbes that should be set when running container
|
||
|
|
# Defaults are given below
|
||
|
|
ENV DB_MAX_THREADS=10
|
||
|
|
ENV WHOIS_PORT=43
|
||
|
|
|
||
|
|
ENV PGHOST=obmp-psql
|
||
|
|
ENV PGDATABASE=openbmp
|
||
|
|
ENV PGUSER=openbmp
|
||
|
|
ENV PGPASSWORD=openbmp
|
||
|
|
ENV PGPORT=5432
|
||
|
|
|
||
|
|
EXPOSE 43
|
||
|
|
|
||
|
|
# -- general depends
|
||
|
|
RUN apk add --no-cache bash
|
||
|
|
|
||
|
|
# -- set entry point to bash and act as login (load profile)
|
||
|
|
ENTRYPOINT /usr/local/bin/obmp-whoisd --logfile /dev/stdout -p $WHOIS_PORT -t $DB_MAX_THREADS
|