From 72417778492d2405fc4e2bb1ce0a5647f2a3aa6b Mon Sep 17 00:00:00 2001 From: michael Date: Mon, 25 Apr 2022 20:07:45 +0200 Subject: [PATCH 01/11] added Dockerfile --- Dockerfile | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 Dockerfile diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..0606fc7 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,14 @@ +FROM golang:1.18-alpine AS builder +ADD . /multilog_exporter +WORKDIR /multilog_exporter + +RUN apk update && \ + apk upgrade && \ + apk add --no-cache git && \ + go build + +FROM alpine:latest +RUN apk --no-cache add ca-certificates +WORKDIR /root/ +COPY --from=builder /multilog_exporter/multilog_exporter ./ +CMD ["./multilog_exporter"] From 6ab6dd4256b60b535a7afea3446179b16360f032 Mon Sep 17 00:00:00 2001 From: michael Date: Mon, 25 Apr 2022 20:28:47 +0200 Subject: [PATCH 02/11] added README-docker.md --- README-docker.md | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 README-docker.md diff --git a/README-docker.md b/README-docker.md new file mode 100644 index 0000000..701f30b --- /dev/null +++ b/README-docker.md @@ -0,0 +1,10 @@ +# Build a local docker image +docker build . -t multilog_exporter:local + +# Run multilog_exporter from local image +docker run -it multilog_exporter:local +docker run -it -p 9144:9144 \ + -v $(pwd)/doc/:/config/ \ + multilog_exporter:local \ + ./multilog_exporter \ + --config.file /config/example.yaml \ No newline at end of file From 8c968e9d58e43d67bcbe310fbe5ffb31e2b83e2d Mon Sep 17 00:00:00 2001 From: michael Date: Mon, 25 Apr 2022 19:32:17 +0000 Subject: [PATCH 03/11] ... --- Dockerfile | 22 +++++++++++++++------- README-docker.md | 2 +- go.mod | 32 -------------------------------- 3 files changed, 16 insertions(+), 40 deletions(-) delete mode 100644 go.mod diff --git a/Dockerfile b/Dockerfile index 0606fc7..9811731 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,14 +1,22 @@ FROM golang:1.18-alpine AS builder -ADD . /multilog_exporter -WORKDIR /multilog_exporter - +COPY . /build +WORKDIR /build RUN apk update && \ apk upgrade && \ - apk add --no-cache git && \ - go build + apk add --no-cache git +RUN git clone https://github.com/kir4h/multilog_exporter.git && \ + cd multilog_exporter && \ + go mod init multilog && \ + go get ./... && \ + go mod vendor && \ + go build && \ + mv multilog ../ && \ + cd .. && \ + rm -fR multilog_exporter + FROM alpine:latest RUN apk --no-cache add ca-certificates WORKDIR /root/ -COPY --from=builder /multilog_exporter/multilog_exporter ./ -CMD ["./multilog_exporter"] +COPY --from=builder /build/multilog ./ +CMD ["./multilog"] diff --git a/README-docker.md b/README-docker.md index 701f30b..03f5be6 100644 --- a/README-docker.md +++ b/README-docker.md @@ -7,4 +7,4 @@ docker run -it -p 9144:9144 \ -v $(pwd)/doc/:/config/ \ multilog_exporter:local \ ./multilog_exporter \ - --config.file /config/example.yaml \ No newline at end of file + --config.file /config/example.yaml diff --git a/go.mod b/go.mod deleted file mode 100644 index 180ef9d..0000000 --- a/go.mod +++ /dev/null @@ -1,32 +0,0 @@ -module github.com/hoffie/multilog_exporter - -go 1.17 - -require ( - github.com/fstab/grok_exporter v0.2.9-0.20200921195934-c2f8f34a8f6b - github.com/prometheus/client_golang v1.11.0 - github.com/sirupsen/logrus v1.8.1 - gopkg.in/alecthomas/kingpin.v2 v2.2.6 - gopkg.in/yaml.v2 v2.4.0 -) - -require ( - github.com/cespare/xxhash/v2 v2.1.2 // indirect - google.golang.org/protobuf v1.27.1 // indirect -) - -require ( - github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751 // indirect - github.com/alecthomas/units v0.0.0-20211218093645-b94a6e3cc137 // indirect - github.com/beorn7/perks v1.0.1 // indirect - github.com/golang/protobuf v1.5.2 // indirect - github.com/matttproud/golang_protobuf_extensions v1.0.1 // indirect - github.com/prometheus/client_model v0.2.0 // indirect - github.com/prometheus/common v0.32.1 // indirect - github.com/prometheus/procfs v0.7.3 // indirect - github.com/stretchr/testify v1.7.0 // indirect - golang.org/x/exp v0.0.0-20220104160115-025e73f80486 // indirect - golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e // indirect -) - -replace github.com/fstab/grok_exporter => github.com/hoffie/grok_exporter v0.2.9-0.20220106073126-d462cb52eaa4 From c3a54a2c3b16594c5f4110afcdea598487d080e6 Mon Sep 17 00:00:00 2001 From: michael Date: Mon, 25 Apr 2022 20:56:00 +0000 Subject: [PATCH 04/11] ... --- Dockerfile | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/Dockerfile b/Dockerfile index 9811731..817a8cc 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,22 +1,22 @@ +#FROM ubuntu:latest AS builder FROM golang:1.18-alpine AS builder -COPY . /build -WORKDIR /build RUN apk update && \ apk upgrade && \ - apk add --no-cache git + apk add git + +RUN mkdir /build +WORKDIR /build -RUN git clone https://github.com/kir4h/multilog_exporter.git && \ - cd multilog_exporter && \ - go mod init multilog && \ - go get ./... && \ - go mod vendor && \ - go build && \ - mv multilog ../ && \ - cd .. && \ - rm -fR multilog_exporter +RUN git clone https://github.com/kir4h/multilog_exporter.git . +RUN go mod init multilog_exporter +RUN go get ./... +RUN go mod vendor +RUN go build FROM alpine:latest -RUN apk --no-cache add ca-certificates -WORKDIR /root/ -COPY --from=builder /build/multilog ./ -CMD ["./multilog"] +#FROM golang:1.18-alpine +#FROM ubuntu:latest +#RUN apk --no-cache add ca-certificates +#WORKDIR /root/ +COPY --from=builder /build/multilog_exporter /root/multilog_exporter +CMD ["/root/multilog_exporter"] From a73a7d6def9bb8fcaf651e3fd19efee881289f0c Mon Sep 17 00:00:00 2001 From: michael Date: Mon, 25 Apr 2022 20:59:58 +0000 Subject: [PATCH 05/11] ... --- go.mod | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 go.mod diff --git a/go.mod b/go.mod new file mode 100644 index 0000000..180ef9d --- /dev/null +++ b/go.mod @@ -0,0 +1,32 @@ +module github.com/hoffie/multilog_exporter + +go 1.17 + +require ( + github.com/fstab/grok_exporter v0.2.9-0.20200921195934-c2f8f34a8f6b + github.com/prometheus/client_golang v1.11.0 + github.com/sirupsen/logrus v1.8.1 + gopkg.in/alecthomas/kingpin.v2 v2.2.6 + gopkg.in/yaml.v2 v2.4.0 +) + +require ( + github.com/cespare/xxhash/v2 v2.1.2 // indirect + google.golang.org/protobuf v1.27.1 // indirect +) + +require ( + github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751 // indirect + github.com/alecthomas/units v0.0.0-20211218093645-b94a6e3cc137 // indirect + github.com/beorn7/perks v1.0.1 // indirect + github.com/golang/protobuf v1.5.2 // indirect + github.com/matttproud/golang_protobuf_extensions v1.0.1 // indirect + github.com/prometheus/client_model v0.2.0 // indirect + github.com/prometheus/common v0.32.1 // indirect + github.com/prometheus/procfs v0.7.3 // indirect + github.com/stretchr/testify v1.7.0 // indirect + golang.org/x/exp v0.0.0-20220104160115-025e73f80486 // indirect + golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e // indirect +) + +replace github.com/fstab/grok_exporter => github.com/hoffie/grok_exporter v0.2.9-0.20220106073126-d462cb52eaa4 From e9ca1f2e19fa05ca3d9ec198989b4b86829eea9c Mon Sep 17 00:00:00 2001 From: michael Date: Mon, 25 Apr 2022 21:50:20 +0000 Subject: [PATCH 06/11] ... --- Dockerfile | 21 ++++----------------- README-docker.md | 11 +++++------ 2 files changed, 9 insertions(+), 23 deletions(-) diff --git a/Dockerfile b/Dockerfile index 817a8cc..6d41de0 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,22 +1,9 @@ -#FROM ubuntu:latest AS builder FROM golang:1.18-alpine AS builder -RUN apk update && \ - apk upgrade && \ - apk add git - -RUN mkdir /build WORKDIR /build - -RUN git clone https://github.com/kir4h/multilog_exporter.git . -RUN go mod init multilog_exporter -RUN go get ./... -RUN go mod vendor +RUN apk update && apk upgrade && apk add git +COPY . /build/ RUN go build FROM alpine:latest -#FROM golang:1.18-alpine -#FROM ubuntu:latest -#RUN apk --no-cache add ca-certificates -#WORKDIR /root/ -COPY --from=builder /build/multilog_exporter /root/multilog_exporter -CMD ["/root/multilog_exporter"] +COPY --from=builder /build/multilog_exporter /multilog_exporter +CMD ["sh", "-c", "/multilog_exporter --metrics.listen-addr ${MLEX_LISTEN:-0.0.0.0:9144} --config.file /mlex.yaml"] diff --git a/README-docker.md b/README-docker.md index 03f5be6..86c8c53 100644 --- a/README-docker.md +++ b/README-docker.md @@ -1,10 +1,9 @@ # Build a local docker image + ``` docker build . -t multilog_exporter:local + ``` # Run multilog_exporter from local image -docker run -it multilog_exporter:local -docker run -it -p 9144:9144 \ - -v $(pwd)/doc/:/config/ \ - multilog_exporter:local \ - ./multilog_exporter \ - --config.file /config/example.yaml + ``` +docker run -it -p 9144:9144 -v $(pwd)/doc/example.yaml:/mlex.yaml multilog_exporter:local + ``` From 58cf38f47c52f0c6aee7b2d8eb8b285c183cf665 Mon Sep 17 00:00:00 2001 From: michael Date: Mon, 25 Apr 2022 21:53:22 +0000 Subject: [PATCH 07/11] ... --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 6d41de0..c34b63d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,6 +1,6 @@ FROM golang:1.18-alpine AS builder WORKDIR /build -RUN apk update && apk upgrade && apk add git +RUN apk update && apk upgrade && apk add git COPY . /build/ RUN go build From 2224b9e52fc78c6407bd4214dc4da9d479133430 Mon Sep 17 00:00:00 2001 From: michael Date: Mon, 25 Apr 2022 21:53:46 +0000 Subject: [PATCH 08/11] ... --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index c34b63d..bf4375c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -3,7 +3,7 @@ WORKDIR /build RUN apk update && apk upgrade && apk add git COPY . /build/ RUN go build - + FROM alpine:latest COPY --from=builder /build/multilog_exporter /multilog_exporter CMD ["sh", "-c", "/multilog_exporter --metrics.listen-addr ${MLEX_LISTEN:-0.0.0.0:9144} --config.file /mlex.yaml"] From 3d0bd32b1bfcf9ed767e96d85009d036edc898fc Mon Sep 17 00:00:00 2001 From: michael Date: Tue, 26 Apr 2022 02:23:04 +0200 Subject: [PATCH 09/11] updated README-docker.md --- README-docker.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/README-docker.md b/README-docker.md index 86c8c53..44dc243 100644 --- a/README-docker.md +++ b/README-docker.md @@ -1,9 +1,9 @@ # Build a local docker image - ``` -docker build . -t multilog_exporter:local - ``` +``` +docker build . -t yopur-repo/multilog-exporter:your-tag +``` -# Run multilog_exporter from local image - ``` -docker run -it -p 9144:9144 -v $(pwd)/doc/example.yaml:/mlex.yaml multilog_exporter:local - ``` +# Run multilog_exporter +``` +docker run -it -p 9144:9144 -v $(pwd)/doc/example.yaml:/mlex.yaml your-repo/multilog-exporter:your-tag +``` From 0f75fed4f9c7b3cfd3ab342f17fd31e558afc22f Mon Sep 17 00:00:00 2001 From: michael Date: Tue, 26 Apr 2022 16:59:05 +0200 Subject: [PATCH 10/11] updated README-docker.md --- README-docker.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/README-docker.md b/README-docker.md index 44dc243..b13b78d 100644 --- a/README-docker.md +++ b/README-docker.md @@ -5,5 +5,8 @@ docker build . -t yopur-repo/multilog-exporter:your-tag # Run multilog_exporter ``` -docker run -it -p 9144:9144 -v $(pwd)/doc/example.yaml:/mlex.yaml your-repo/multilog-exporter:your-tag +docker run -it -p 9144:9144 \ + -v /var/log/:/logs/:ro + -v $(pwd)/doc/example.yaml:/mlex.yaml:ro \ + your-repo/multilog-exporter:your-tag ``` From 0a18c6f0bb9a4185b64433958b132699fbfe8f97 Mon Sep 17 00:00:00 2001 From: michael Date: Tue, 26 Apr 2022 16:59:51 +0200 Subject: [PATCH 11/11] updated README-docker.md --- README-docker.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README-docker.md b/README-docker.md index b13b78d..ed89728 100644 --- a/README-docker.md +++ b/README-docker.md @@ -6,7 +6,7 @@ docker build . -t yopur-repo/multilog-exporter:your-tag # Run multilog_exporter ``` docker run -it -p 9144:9144 \ - -v /var/log/:/logs/:ro + -v /var/log/:/logs/:ro \ -v $(pwd)/doc/example.yaml:/mlex.yaml:ro \ your-repo/multilog-exporter:your-tag ```