-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathDockerfile
More file actions
33 lines (26 loc) · 1.09 KB
/
Dockerfile
File metadata and controls
33 lines (26 loc) · 1.09 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
FROM golang:1.20.3 as builder
ARG NR_LICENSE_B
ARG SLACK_WEBHOOK_B
ARG ROUTER_HOSTNAME_B
ARG ROUTER_USERNAME_B
ARG ROUTER_SSH_PUBKEY_B
ARG ROUTER_SSH_PRIVKEY_B
ARG SNMPV3_USER_B
ARG SNMPV3_AUTH_PASS_B
ARG SNMPV3_PRIV_PASS_B
ARG TUNNEL_USER_B
ARG TUNNEL_PASS_B
ARG TUNNEL_ID_B
ENV NR_LICENSE=$NR_LICENSE_B SLACK_WEBHOOK=$SLACK_WEBHOOK_B ROUTER_HOSTNAME=$ROUTER_HOSTNAME_B ROUTER_USERNAME=$ROUTER_USERNAME_B ROUTER_SSH_PUBKEY=$ROUTER_SSH_PUBKEY_B ROUTER_SSH_PRIVKEY=$ROUTER_SSH_PRIVKEY_B \
SNMPV3_USER=$SNMPV3_USER_B SNMPV3_AUTH_PASS=$SNMPV3_AUTH_PASS_B SNMPV3_PRIV_PASS=$SNMPV3_PRIV_PASS_B TUNNEL_USER=$TUNNEL_USER_B TUNNEL_PASS=$TUNNEL_PASS_B TUNNEL_ID=$TUNNEL_ID_B
COPY *.go go.* /go/src/github.com/jeff-blank/otto/
WORKDIR /go/src/github.com/jeff-blank/otto
RUN GO111MODULE=on CGO_ENABLED=0 GOOS=linux go build .
WORKDIR /
COPY inject_secrets config.yaml /
RUN /inject_secrets
FROM alpine:latest
COPY --from=builder /go/src/github.com/jeff-blank/otto/otto /config.yaml /id_ed25519 /
COPY --from=builder /known_hosts /.ssh/known_hosts
RUN chmod 0600 /id_ed25519
ENTRYPOINT ["/otto", "-conf", "/config.yaml"]