From 572437a4d6c630e0d38b8ba0cfb78562e34d20ca Mon Sep 17 00:00:00 2001 From: Werner Beroux Date: Mon, 2 Jul 2018 13:26:40 +0200 Subject: [PATCH] Adds edge version. Fixes #10. --- README.md | 9 +- edge/Dockerfile | 35 +++++ Pipfile => edge/Pipfile | 0 Pipfile.lock => edge/Pipfile.lock | 0 Dockerfile => latest/Dockerfile | 0 latest/Pipfile | 14 ++ latest/Pipfile.lock | 227 ++++++++++++++++++++++++++++++ 7 files changed, 283 insertions(+), 2 deletions(-) create mode 100644 edge/Dockerfile rename Pipfile => edge/Pipfile (100%) rename Pipfile.lock => edge/Pipfile.lock (100%) rename Dockerfile => latest/Dockerfile (100%) create mode 100644 latest/Pipfile create mode 100644 latest/Pipfile.lock diff --git a/README.md b/README.md index 2e3fdce..c033a16 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,11 @@ -[![](https://images.microbadger.com/badges/image/wernight/duplicity.svg)](https://microbadger.com/images/wernight/duplicity "Get your own image badge on microbadger.com") +# Supported tags and respective `Dockerfile` links -Dockerized **[duplicity](http://duplicity.nongnu.org/)** backup tool. + * [`latest`](https://github.com/wernight/docker-duplicity/blob/master/latest/Dockerfile) [![](https://images.microbadger.com/badges/image/wernight/duplicity.svg)](https://microbadger.com/images/wernight/duplicity "Get your own image badge on microbadger.com") + * [`edge`](https://github.com/wernight/docker-duplicity/blob/master/edge/Dockerfile) [![](https://images.microbadger.com/badges/image/wernight/duplicity:edge.svg)](https://microbadger.com/images/wernight/duplicity "Get your own image badge on microbadger.com") + +# What is Duplicity? + +**[duplicity](http://duplicity.nongnu.org/)** backup tool. Features of this Docker image: diff --git a/edge/Dockerfile b/edge/Dockerfile new file mode 100644 index 0000000..ca94927 --- /dev/null +++ b/edge/Dockerfile @@ -0,0 +1,35 @@ +FROM alpine:edge + +ENV HOME=/home/duplicity + +RUN set -x \ + && apk add --no-cache \ + ca-certificates \ + duplicity \ + lftp \ + openssh \ + openssl \ + py-crypto \ + py-paramiko \ + py-setuptools \ + rsync \ + && update-ca-certificates + +COPY Pipfile Pipfile.lock / + +RUN set -x \ + && apk add --no-cache py-pip \ + && pip install pipenv \ + && pipenv install --system --deploy \ + && apk del --purge py-pip \ + && adduser -D -u 1896 duplicity \ + && mkdir -p /home/duplicity/.cache/duplicity \ + && mkdir -p /home/duplicity/.gnupg \ + && chmod -R go+rwx /home/duplicity/ \ + && su - duplicity -c 'duplicity --version' + +VOLUME ["/home/duplicity/.cache/duplicity", "/home/duplicity/.gnupg"] + +USER duplicity + +CMD ["duplicity"] diff --git a/Pipfile b/edge/Pipfile similarity index 100% rename from Pipfile rename to edge/Pipfile diff --git a/Pipfile.lock b/edge/Pipfile.lock similarity index 100% rename from Pipfile.lock rename to edge/Pipfile.lock diff --git a/Dockerfile b/latest/Dockerfile similarity index 100% rename from Dockerfile rename to latest/Dockerfile diff --git a/latest/Pipfile b/latest/Pipfile new file mode 100644 index 0000000..7409ac5 --- /dev/null +++ b/latest/Pipfile @@ -0,0 +1,14 @@ +[[source]] +url = "https://pypi.org/simple" +verify_ssl = true +name = "pypi" + +[dev-packages] + +[packages] +pydrive = "*" +fasteners = "*" +"b2" = "*" + +[requires] +python_version = "2.7" diff --git a/latest/Pipfile.lock b/latest/Pipfile.lock new file mode 100644 index 0000000..95bd741 --- /dev/null +++ b/latest/Pipfile.lock @@ -0,0 +1,227 @@ +{ + "_meta": { + "hash": { + "sha256": "96175b96b40add7098b7f68b4d71d8c26766371a53e39562288e080f525d3d77" + }, + "pipfile-spec": 6, + "requires": { + "python_version": "2.7" + }, + "sources": [ + { + "name": "pypi", + "url": "https://pypi.org/simple", + "verify_ssl": true + } + ] + }, + "default": { + "arrow": { + "hashes": [ + "sha256:a558d3b7b6ce7ffc74206a86c147052de23d3d4ef0e17c210dd478c53575c4cd" + ], + "version": "==0.12.1" + }, + "b2": { + "hashes": [ + "sha256:d7e55654394e84a7b65a5458905d4c5797c4c003ac89e8506e71a9be57d5e2b6" + ], + "index": "pypi", + "version": "==1.1.0" + }, + "backports.functools-lru-cache": { + "hashes": [ + "sha256:9d98697f088eb1b0fa451391f91afb5e3ebde16bbdb272819fd091151fda4f1a", + "sha256:f0b0e4eba956de51238e17573b7087e852dfe9854afd2e9c873f73fc0ca0a6dd" + ], + "markers": "python_version == '2.7'", + "version": "==1.5" + }, + "cachetools": { + "hashes": [ + "sha256:90f1d559512fc073483fe573ef5ceb39bf6ad3d39edc98dc55178a2b2b176fa3", + "sha256:d1c398969c478d336f767ba02040fa22617333293fb0b8968e79b16028dfee35" + ], + "version": "==2.1.0" + }, + "certifi": { + "hashes": [ + "sha256:13e698f54293db9f89122b0581843a782ad0934a4fe0172d2a980ba77fc61bb7", + "sha256:9fa520c1bacfb634fa7af20a76bcbd3d5fb390481724c597da32c719a7dca4b0" + ], + "version": "==2018.4.16" + }, + "chardet": { + "hashes": [ + "sha256:84ab92ed1c4d4f16916e05906b6b75a6c0fb5db821cc65e70cbd64a3e2a5eaae", + "sha256:fc323ffcaeaed0e0a02bf4d117757b98aed530d9ed4531e3e15460124c106691" + ], + "version": "==3.0.4" + }, + "fasteners": { + "hashes": [ + "sha256:427c76773fe036ddfa41e57d89086ea03111bbac57c55fc55f3006d027107e18", + "sha256:564a115ff9698767df401efca29620cbb1a1c2146b7095ebd304b79cc5807a7c" + ], + "index": "pypi", + "version": "==0.14.1" + }, + "funcsigs": { + "hashes": [ + "sha256:330cc27ccbf7f1e992e69fef78261dc7c6569012cf397db8d3de0234e6c937ca", + "sha256:a7bb0f2cf3a3fd1ab2732cb49eba4252c2af4240442415b4abce3b87022a8f50" + ], + "version": "==1.0.2" + }, + "futures": { + "hashes": [ + "sha256:9ec02aa7d674acb8618afb127e27fde7fc68994c0437ad759fa094a574adb265", + "sha256:ec0a6cb848cc212002b9828c3e34c675e0c9ff6741dc445cab6fdd4e1085d1f1" + ], + "markers": "python_version < '3' and python_version >= '2.6'", + "version": "==3.2.0" + }, + "google-api-python-client": { + "hashes": [ + "sha256:876b974612c6d9b5de348079b706500bd170e7fdab30b9a4b72758d129cd64dc", + "sha256:e32d30563b90c4f88ff042d4d891b5e8ed1f6cdca0adab95e9c2ce2603087436" + ], + "version": "==1.7.3" + }, + "google-auth": { + "hashes": [ + "sha256:1745c9066f698eac3da99cef082914495fb71bc09597ba7626efbbb64c4acc57", + "sha256:82a34e1a59ad35f01484d283d2a36b7a24c8c404a03a71b3afddd0a4d31e169f" + ], + "version": "==1.5.0" + }, + "google-auth-httplib2": { + "hashes": [ + "sha256:098fade613c25b4527b2c08fa42d11f3c2037dda8995d86de0745228e965d445", + "sha256:f1c437842155680cf9918df9bc51c1182fda41feef88c34004bd1978c8157e08" + ], + "version": "==0.0.3" + }, + "httplib2": { + "hashes": [ + "sha256:e71daed9a0e6373642db61166fa70beecc9bf04383477f84671348c02a04cbdf" + ], + "version": "==0.11.3" + }, + "idna": { + "hashes": [ + "sha256:156a6814fb5ac1fc6850fb002e0852d56c0c8d2531923a51032d1b70760e186e", + "sha256:684a38a6f903c1d71d6d5fac066b58d7768af4de2b832e426ec79c30daa94a16" + ], + "version": "==2.7" + }, + "logfury": { + "hashes": [ + "sha256:42da58fbbd4e6fdb9e5b6b9098e94c249ba9cebfae125643329c8636768edcd3", + "sha256:e0ce7f95bab6e5b2fd835b3d8ff5e226704476671d15340a99b00285f4c2d1fc" + ], + "version": "==0.1.2" + }, + "monotonic": { + "hashes": [ + "sha256:23953d55076df038541e648a53676fb24980f7a1be290cdda21300b3bc21dfb0", + "sha256:552a91f381532e33cbd07c6a2655a21908088962bb8fa7239ecbcc6ad1140cc7" + ], + "version": "==1.5" + }, + "oauth2client": { + "hashes": [ + "sha256:bd3062c06f8b10c6ef7a890b22c2740e5f87d61b6e1f4b1c90d069cdfc9dadb5", + "sha256:cf061f52f75e91d489bf5c276498f8af2655fe331b454f10022441513cf445a6" + ], + "version": "==4.1.2" + }, + "pyasn1": { + "hashes": [ + "sha256:a66dcda18dbf6e4663bde70eb30af3fc4fe1acb2d14c4867a861681887a5f9a2", + "sha256:fb81622d8f3509f0026b0683fe90fea27be7284d3826a5f2edf97f69151ab0fc" + ], + "version": "==0.4.3" + }, + "pyasn1-modules": { + "hashes": [ + "sha256:a0cf3e1842e7c60fde97cb22d275eb6f9524f5c5250489e292529de841417547", + "sha256:a38a8811ea784c0136abfdba73963876328f66172db21a05a82f9515909bfb4e" + ], + "version": "==0.2.2" + }, + "pydrive": { + "hashes": [ + "sha256:5b94e971430722eb5c40a090f21df46b32e51399d747c1511796f63f902d1095", + "sha256:83890dcc2278081c6e3f6a8da1f8083e25de0bcc8eb7c91374908c5549a20787" + ], + "index": "pypi", + "version": "==1.3.1" + }, + "python-dateutil": { + "hashes": [ + "sha256:1adb80e7a782c12e52ef9a8182bebeb73f1d7e24e374397af06fb4956c8dc5c0", + "sha256:e27001de32f627c22380a688bcc43ce83504a7bc5da472209b4c70f02829f0b8" + ], + "version": "==2.7.3" + }, + "pyyaml": { + "hashes": [ + "sha256:16b20e970597e051997d90dc2cddc713a2876c47e3d92d59ee198700c5427736", + "sha256:3262c96a1ca437e7e4763e2843746588a965426550f3797a79fca9c6199c431f", + "sha256:592766c6303207a20efc445587778322d7f73b161bd994f227adaa341ba212ab", + "sha256:5ac82e411044fb129bae5cfbeb3ba626acb2af31a8d17d175004b70862a741a7", + "sha256:827dc04b8fa7d07c44de11fabbc888e627fa8293b695e0f99cb544fdfa1bf0d1", + "sha256:bc6bced57f826ca7cb5125a10b23fd0f2fff3b7c4701d64c439a300ce665fff8", + "sha256:c01b880ec30b5a6e6aa67b09a2fe3fb30473008c85cd6a67359a1b15ed6d83a4", + "sha256:e863072cdf4c72eebf179342c94e6989c67185842d9997960b3e69290b2fa269" + ], + "version": "==3.12" + }, + "requests": { + "hashes": [ + "sha256:63b52e3c866428a224f97cab011de738c36aec0185aa91cfacd418b5d58911d1", + "sha256:ec22d826a36ed72a7358ff3fe56cbd4ba69dd7a6718ffd450ff0e9df7a47ce6a" + ], + "version": "==2.19.1" + }, + "rsa": { + "hashes": [ + "sha256:25df4e10c263fb88b5ace923dd84bf9aa7f5019687b5e55382ffcdb8bede9db5", + "sha256:43f682fea81c452c98d09fc316aae12de6d30c4b5c84226642cf8f8fd1c93abd" + ], + "version": "==3.4.2" + }, + "six": { + "hashes": [ + "sha256:70e8a77beed4562e7f14fe23a786b54f6296e34344c23bc42f07b15018ff98e9", + "sha256:832dc0e10feb1aa2c68dcc57dbb658f1c7e65b9b61af69048abc87a2db00a0eb" + ], + "version": "==1.11.0" + }, + "tqdm": { + "hashes": [ + "sha256:224291ee0d8c52d91b037fd90806f48c79bcd9994d3b0abc9e44b946a908fccd", + "sha256:77b8424d41b31e68f437c6dd9cd567aebc9a860507cb42fbd880a5f822d966fe" + ], + "version": "==4.23.4" + }, + "uritemplate": { + "hashes": [ + "sha256:01c69f4fe8ed503b2951bef85d996a9d22434d2431584b5b107b2981ff416fbd", + "sha256:1b9c467a940ce9fb9f50df819e8ddd14696f89b9a8cc87ac77952ba416e0a8fd", + "sha256:c02643cebe23fc8adb5e6becffe201185bf06c40bda5c0b4028a93f1527d011d" + ], + "version": "==3.0.0" + }, + "urllib3": { + "hashes": [ + "sha256:a68ac5e15e76e7e5dd2b8f94007233e01effe3e50e8daddf69acfd81cb686baf", + "sha256:b5725a0bd4ba422ab0e66e89e030c806576753ea3ee08554382c14e685d117b5" + ], + "markers": "python_version != '3.2.*' and python_version != '3.3.*' and python_version != '3.0.*' and python_version != '3.1.*' and python_version < '4' and python_version >= '2.6'", + "version": "==1.23" + } + }, + "develop": {} +}