aboutsummaryrefslogtreecommitdiff
path: root/dropbox
diff options
context:
space:
mode:
authorMike Crute <mike@crute.us>2017-12-27 21:02:10 +0000
committerMike Crute <mike@crute.us>2017-12-27 21:02:10 +0000
commitb54b70165b32492765d0fa357b62456bc7ba3737 (patch)
tree047e67e727175eca9a149063548a8f1d332c6501 /dropbox
parentc71229122674dee8ca1947382b0d34d4c436c41f (diff)
downloaddockerfiles-b54b70165b32492765d0fa357b62456bc7ba3737.tar.bz2
dockerfiles-b54b70165b32492765d0fa357b62456bc7ba3737.tar.xz
dockerfiles-b54b70165b32492765d0fa357b62456bc7ba3737.zip
Add dropbox
Diffstat (limited to 'dropbox')
-rw-r--r--dropbox/Dockerfile13
-rw-r--r--dropbox/Makefile21
-rwxr-xr-xdropbox/entrypoint.sh29
3 files changed, 63 insertions, 0 deletions
diff --git a/dropbox/Dockerfile b/dropbox/Dockerfile
new file mode 100644
index 0000000..d4565c8
--- /dev/null
+++ b/dropbox/Dockerfile
@@ -0,0 +1,13 @@
1FROM frolvlad/alpine-glibc:latest
2LABEL maintainer="Mike Crute <mike@crute.us>"
3
4RUN set -eu -o pipefail; \
5 apk --no-cache add su-exec dumb-init; \
6 wget -O /tmp/dropbox.tar.gz https://www.dropbox.com/download?plat=lnx.x86_64; \
7 mkdir -p /opt/dropbox; \
8 tar -C /opt/dropbox/ --strip-components=1 -xf /tmp/dropbox.tar.gz; \
9 rm -rf /tmp/*;
10
11ADD entrypoint.sh /
12ENTRYPOINT [ "/entrypoint.sh" ]
13CMD [ "/opt/dropbox/dropboxd" ]
diff --git a/dropbox/Makefile b/dropbox/Makefile
new file mode 100644
index 0000000..817e869
--- /dev/null
+++ b/dropbox/Makefile
@@ -0,0 +1,21 @@
1REPO=575365190010.dkr.ecr.us-west-2.amazonaws.com
2IMAGE=dropbox:latest-alpine
3
4all:
5 docker build \
6 -t $(IMAGE) .
7
8all-no-cache:
9 docker build \
10 --no-cache \
11 -t $(IMAGE) .
12
13run:
14 docker run \
15 -v /home/mcrute/Dropbox:/home/mcrute/Dropbox \
16 $(IMAGE)
17
18publish:
19 eval $$(aws ecr get-login --region us-west-2)
20 docker tag $(IMAGE) $(REPO)/$(IMAGE)
21 docker push $(REPO)/$(IMAGE)
diff --git a/dropbox/entrypoint.sh b/dropbox/entrypoint.sh
new file mode 100755
index 0000000..16c8ebc
--- /dev/null
+++ b/dropbox/entrypoint.sh
@@ -0,0 +1,29 @@
1#!/bin/sh
2
3set -e
4
5DATA_DIR="/srv/dropbox/data"
6CFG_DIR="/srv/dropbox/config"
7USERNAME="dropbox"
8
9# Default UID/GID to owner of the data directory
10USER_UID=${USER_UID:-$(stat -L -c "%u" $DATA_DIR)}
11USER_GID=${USER_GID:-$(stat -L -c "%u" $DATA_DIR)}
12
13if [ "$USER_GID" = 0 -o "$USER_GID" = 0 ]; then
14 echo "User UID/GID could not be discovered, is $DATA_DIR mounted?"
15 exit 1
16fi
17
18# Create the user and group
19addgroup -g ${USER_GID} -S ${USERNAME}
20adduser -u ${USER_UID} -h /home/${USERNAME} -D -G ${USERNAME} ${USERNAME}
21
22ln -s /srv/dropbox/data /home/${USERNAME}/Dropbox
23ln -s /srv/dropbox/config /home/${USERNAME}/.dropbox
24
25if [ "$@" == "/bin/sh" ]; then
26 exec "$@"
27else
28 exec /usr/bin/dumb-init -c /sbin/su-exec ${USERNAME} "$@"
29fi