From 1a83b5e68dbe0ef1da2dd435b17885ef204bd001 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jan=20Christian=20Gr=C3=BCnhage?=
 <jan.christian@gruenhage.xyz>
Date: Tue, 23 Jan 2018 22:34:01 +0100
Subject: [PATCH] Add Dockerfile

---
 Dockerfile    | 24 ++++++++++++++++++++++++
 docker/run.sh |  8 ++++++++
 2 files changed, 32 insertions(+)
 create mode 100644 Dockerfile
 create mode 100755 docker/run.sh

diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 00000000..cda6272e
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,24 @@
+FROM docker.io/alpine
+COPY . /tmp/src
+RUN apk add --no-cache \
+      su-exec \
+ && apk add --no-cache \
+      -t build-deps \
+      go \
+      git \
+      musl-dev \
+ && cd /tmp/src \
+ && GOPATH=`pwd` go get github.com/constabulary/gb/... \
+ && PATH=$PATH:`pwd`/bin gb vendor restore \
+ && GOPATH=`pwd`:`pwd`/vendor go build -o bin/media_repo ./src/github.com/turt2live/matrix-media-repo/cmd/media_repo/ \
+ && GOPATH=`pwd`:`pwd`/vendor go build -o bin/import_synapse ./src/github.com/turt2live/matrix-media-repo/cmd/import_synapse/ \
+ && cp bin/media_repo bin/import_synapse docker/run.sh /usr/local/bin \
+ && cp config.sample.yaml /etc/media-repo.yaml.sample \
+ && cp -R migrations /var/lib/media-repo-migrations \
+ && cd / \
+ && rm -rf /tmp/* \
+ && apk del build-deps
+
+CMD /usr/local/bin/run.sh
+VOLUME ["/data", "/media"]
+EXPOSE 8000
diff --git a/docker/run.sh b/docker/run.sh
new file mode 100755
index 00000000..40c60dfb
--- /dev/null
+++ b/docker/run.sh
@@ -0,0 +1,8 @@
+#!/usr/bin/env sh
+cd /data
+if [ ! -f media-repo.yaml ]; then
+    cp /etc/media-repo.yaml.sample media-repo.yaml
+fi
+chown -R ${UID}:${GID} /data
+
+exec su-exec ${UID}:${GID} media_repo -migrations /var/lib/media-repo-migrations
-- 
GitLab