aboutsummaryrefslogtreecommitdiff
path: root/restic-rest-server
diff options
context:
space:
mode:
authorMike Crute <mike@crute.us>2020-02-13 23:16:17 +0000
committerMike Crute <mike@crute.us>2020-02-13 23:16:17 +0000
commit86a24d2f31af40f3514913b2b4485355547f0130 (patch)
tree1e5beabe063bc6fbde472ee9b672092e51b436f2 /restic-rest-server
parent053cca5b7614456cb6a64996a1b8b9afaeddf0a5 (diff)
downloaddockerfiles-86a24d2f31af40f3514913b2b4485355547f0130.tar.bz2
dockerfiles-86a24d2f31af40f3514913b2b4485355547f0130.tar.xz
dockerfiles-86a24d2f31af40f3514913b2b4485355547f0130.zip
restic-rest-server: use custom entrypoint
Diffstat (limited to 'restic-rest-server')
-rw-r--r--restic-rest-server/Dockerfile7
-rw-r--r--restic-rest-server/Makefile10
-rwxr-xr-xrestic-rest-server/entrypoint.sh23
3 files changed, 32 insertions, 8 deletions
diff --git a/restic-rest-server/Dockerfile b/restic-rest-server/Dockerfile
index 2b038a8..e2b5b87 100644
--- a/restic-rest-server/Dockerfile
+++ b/restic-rest-server/Dockerfile
@@ -9,12 +9,13 @@ RUN set -eux; \
9FROM alpine:latest 9FROM alpine:latest
10LABEL maintainer="Mike Crute <mike@crute.us>" 10LABEL maintainer="Mike Crute <mike@crute.us>"
11 11
12ENV DATA_DIRECTORY /data
13ENV PASSWORD_FILE /data/.htpasswd 12ENV PASSWORD_FILE /data/.htpasswd
14 13
15RUN apk add --no-cache --update apache2-utils 14RUN set -eux; \
15 apk add --no-cache \
16 apache2-utils;
16 17
17COPY --from=builder /tmp/rest-server/rest-server /tmp/rest-server/docker/*_user /usr/bin/ 18COPY --from=builder /tmp/rest-server/rest-server /tmp/rest-server/docker/*_user /usr/bin/
18COPY --from=builder /tmp/rest-server/docker/entrypoint.sh /entrypoint.sh 19ADD entrypoint.sh /entrypoint.sh
19 20
20CMD [ "/entrypoint.sh" ] 21CMD [ "/entrypoint.sh" ]
diff --git a/restic-rest-server/Makefile b/restic-rest-server/Makefile
index 5fd0238..8ba21be 100644
--- a/restic-rest-server/Makefile
+++ b/restic-rest-server/Makefile
@@ -1,9 +1,9 @@
1VERSION=0.9.8 1VERSION=0.9.8
2IMAGE=docker.crute.me/restic-rest-server:$(VERSION) 2IMAGE=docker.crute.me/restic-rest-server
3 3
4all: 4all:
5 docker pull alpine:latest 5 docker pull alpine:latest
6 docker build -t $(IMAGE) . 6 docker build -t $(IMAGE):$(VERSION) .
7 7
8all-no-cache: 8all-no-cache:
9 docker build \ 9 docker build \
@@ -21,6 +21,6 @@ run:
21 $(IMAGE) 21 $(IMAGE)
22 22
23publish: 23publish:
24 docker push $(IMAGE) 24 docker push $(IMAGE):$(VERSION)
25 docker tag $(IMAGE) $(LATEST) 25 docker tag $(IMAGE):$(VERSION) $(IMAGE):latest
26 docker push $(LATEST) 26 docker push $(IMAGE):latest
diff --git a/restic-rest-server/entrypoint.sh b/restic-rest-server/entrypoint.sh
new file mode 100755
index 0000000..57a9afb
--- /dev/null
+++ b/restic-rest-server/entrypoint.sh
@@ -0,0 +1,23 @@
1#!/bin/sh
2
3set -e
4
5DATA_DIRECTORY=${DATA_DIRECTORY:-"/data"}
6PASSWORD_FILE=${PASSWORD_FILE:-"/data/.htpasswd"}
7DISABLE_AUTHENTICATION=${DISABLE_AUTHENTICATION:-"true"}
8OPTIONS=${OPTIONS:-"--append-only --prometheus"}
9
10if [ "$DISABLE_AUTHENTICATION" = "false" ]; then
11 [ ! -f "$PASSWORD_FILE" ] && touch "$PASSWORD_FILE"
12
13 if [ ! -s "$PASSWORD_FILE" ]; then
14 echo
15 echo "**WARNING** No user exists, please 'docker exec -it \$CONTAINER_ID create_user'"
16 echo
17 fi
18else
19 rm -f "$PASSWORD_FILE"
20 OPTIONS="$OPTIONS --no-auth"
21fi
22
23exec rest-server --path "$DATA_DIRECTORY" $OPTIONS