diff options
author | Mike Crute <mike@crute.us> | 2020-02-13 23:16:17 +0000 |
---|---|---|
committer | Mike Crute <mike@crute.us> | 2020-02-13 23:16:17 +0000 |
commit | 86a24d2f31af40f3514913b2b4485355547f0130 (patch) | |
tree | 1e5beabe063bc6fbde472ee9b672092e51b436f2 /restic-rest-server | |
parent | 053cca5b7614456cb6a64996a1b8b9afaeddf0a5 (diff) | |
download | dockerfiles-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/Dockerfile | 7 | ||||
-rw-r--r-- | restic-rest-server/Makefile | 10 | ||||
-rwxr-xr-x | restic-rest-server/entrypoint.sh | 23 |
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; \ | |||
9 | FROM alpine:latest | 9 | FROM alpine:latest |
10 | LABEL maintainer="Mike Crute <mike@crute.us>" | 10 | LABEL maintainer="Mike Crute <mike@crute.us>" |
11 | 11 | ||
12 | ENV DATA_DIRECTORY /data | ||
13 | ENV PASSWORD_FILE /data/.htpasswd | 12 | ENV PASSWORD_FILE /data/.htpasswd |
14 | 13 | ||
15 | RUN apk add --no-cache --update apache2-utils | 14 | RUN set -eux; \ |
15 | apk add --no-cache \ | ||
16 | apache2-utils; | ||
16 | 17 | ||
17 | COPY --from=builder /tmp/rest-server/rest-server /tmp/rest-server/docker/*_user /usr/bin/ | 18 | COPY --from=builder /tmp/rest-server/rest-server /tmp/rest-server/docker/*_user /usr/bin/ |
18 | COPY --from=builder /tmp/rest-server/docker/entrypoint.sh /entrypoint.sh | 19 | ADD entrypoint.sh /entrypoint.sh |
19 | 20 | ||
20 | CMD [ "/entrypoint.sh" ] | 21 | CMD [ "/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 @@ | |||
1 | VERSION=0.9.8 | 1 | VERSION=0.9.8 |
2 | IMAGE=docker.crute.me/restic-rest-server:$(VERSION) | 2 | IMAGE=docker.crute.me/restic-rest-server |
3 | 3 | ||
4 | all: | 4 | all: |
5 | docker pull alpine:latest | 5 | docker pull alpine:latest |
6 | docker build -t $(IMAGE) . | 6 | docker build -t $(IMAGE):$(VERSION) . |
7 | 7 | ||
8 | all-no-cache: | 8 | all-no-cache: |
9 | docker build \ | 9 | docker build \ |
@@ -21,6 +21,6 @@ run: | |||
21 | $(IMAGE) | 21 | $(IMAGE) |
22 | 22 | ||
23 | publish: | 23 | publish: |
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 | |||
3 | set -e | ||
4 | |||
5 | DATA_DIRECTORY=${DATA_DIRECTORY:-"/data"} | ||
6 | PASSWORD_FILE=${PASSWORD_FILE:-"/data/.htpasswd"} | ||
7 | DISABLE_AUTHENTICATION=${DISABLE_AUTHENTICATION:-"true"} | ||
8 | OPTIONS=${OPTIONS:-"--append-only --prometheus"} | ||
9 | |||
10 | if [ "$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 | ||
18 | else | ||
19 | rm -f "$PASSWORD_FILE" | ||
20 | OPTIONS="$OPTIONS --no-auth" | ||
21 | fi | ||
22 | |||
23 | exec rest-server --path "$DATA_DIRECTORY" $OPTIONS | ||