diff --git a/.drone.yml b/.drone.yml new file mode 100644 index 0000000..0c4f1f2 --- /dev/null +++ b/.drone.yml @@ -0,0 +1,7 @@ +pipeline: + docker: + image: plugins/docker + repo: docker.jcg.re/media-repo + registry: docker.jcg.re + secrets: [docker_username, docker_password] + tags: latest diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..02008df --- /dev/null +++ b/Dockerfile @@ -0,0 +1,23 @@ +FROM docker.jcg.re/base-alpine + +RUN apk add --no-cache \ + -t build-deps \ + go \ + git \ + musl-dev \ + && cd /tmp \ + && git clone https://github.com/turt2live/matrix-media-repo \ + && cd matrix-media-repo \ + && 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 /usr/local/bin \ + && cp config.sample.yaml /etc/media_repo.yaml.sample \ + && cd / \ + && rm -rf /tmp/* \ + && apk del build-deps + +COPY root / +VOLUME /data +EXPOSE 8000 diff --git a/README.md b/README.md index 600172e..80ce734 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,4 @@ -# docker-turt2live-matrix-media-repo +## docker.jcg.re/media-repo +[![Build Status](https://drone.jcg.re/api/badges/jcgruenhage/docker-media-repo/status.svg)](https://drone.jcg.re/jcgruenhage/docker-media-repo) -A dockerization of Travis's Media Repository: https://github.com/turt2live/matrix-media-repo \ No newline at end of file +A dockerization of [Travis' Media Repository](https://github.com/turt2live/matrix-media-repo). diff --git a/root/etc/s6.d/media-repo/finish b/root/etc/s6.d/media-repo/finish new file mode 100755 index 0000000..d2f0ed6 --- /dev/null +++ b/root/etc/s6.d/media-repo/finish @@ -0,0 +1,2 @@ +#!/usr/bin/env sh +s6-svscanctl -t /etc/s6.d diff --git a/root/etc/s6.d/media-repo/run b/root/etc/s6.d/media-repo/run new file mode 100755 index 0000000..2d79fc7 --- /dev/null +++ b/root/etc/s6.d/media-repo/run @@ -0,0 +1,10 @@ +#!/usr/bin/env sh + +chown -R ${UID}:${GID} /data +cd /data + +if [ ! -f media_repo.yaml ]; then + cp /etc/media_repo.yaml.sample media_repo.yaml +fi + +exec su-exec ${UID}:${GID} media_repo