From 070fe72f3e69da3800a899f5e4c38c341506e0cd Mon Sep 17 00:00:00 2001 From: Tulir Asokan Date: Fri, 24 Aug 2018 23:06:55 +0300 Subject: [PATCH] Add Dockerfile --- Dockerfile | 16 ++++++++++++++++ docker-run.sh | 21 +++++++++++++++++++++ 2 files changed, 37 insertions(+) create mode 100644 Dockerfile create mode 100644 docker-run.sh diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..c497a6e --- /dev/null +++ b/Dockerfile @@ -0,0 +1,16 @@ +FROM golang:1-alpine AS builder + +RUN apk add --no-cache git ca-certificates +COPY . /go/src/maunium.net/go/mautrix-whatsapp +WORKDIR /go/src/maunium.net/go/mautrix-whatsapp +RUN CGO_ENABLED=0 go get -u maunium.net/go/mautrix-whatsapp && CGO_ENABLED=0 go build -o /usr/bin/mautrix-whatsapp + +FROM alpine:latest + +COPY --from=builder /usr/bin/mautrix-whatsapp /usr/bin/mautrix-whatsapp +COPY --from=builder /etc/ssl/certs/ /etc/ssl/certs +COPY --from=builder /go/src/maunium.net/go/mautrix-whatsapp/example-config.yaml /opt/mautrix-whatsapp/example-config.yaml +COPY --from=builder /go/src/maunium.net/go/mautrix-whatsapp/docker-run.sh /docker-run.sh +VOLUME /data + +CMD ["/docker-run.sh"] diff --git a/docker-run.sh b/docker-run.sh new file mode 100644 index 0000000..982aa57 --- /dev/null +++ b/docker-run.sh @@ -0,0 +1,21 @@ +#!/bin/sh + +if [ ! -f /data/config.yaml ]; then + cp /opt/mautrix-whatsapp/example-config.yaml /data/config.yaml + echo "Didn't find a config file." + echo "Copied default config file to /data/config.yaml" + echo "Modify that config file to your liking." + echo "Start the container again after that to generate the registration file." + exit +fi + +if [ ! -f /data/registration.yaml ]; then + /usr/bin/mautrix-whatsapp -g -c /data/config.yaml -r /data/registration.yaml + echo "Didn't find a registration file." + echo "Generated one for you." + echo "Copy that over to synapses app service directory." + exit +fi + +cd /data +/usr/bin/mautrix-whatsapp