mirror of
https://github.com/clunietp/docker-trickle-megasync.git
synced 2024-11-23 02:11:09 +01:00
Add docker files
This commit is contained in:
parent
da072ddcf9
commit
ba597fd89e
41
Dockerfile
Normal file
41
Dockerfile
Normal file
|
@ -0,0 +1,41 @@
|
|||
|
||||
FROM alpine:edge
|
||||
|
||||
ENV MEGA_VERSION=v3.6.5
|
||||
ENV TRICKLE_VERSION=596bb13f2bc323fc8e7783b8dcba627de4969e07
|
||||
ENV TRICKLE_SHA256SUM=a4111063d67a3330025eea2f29ebd8c8605e43cc1be0bf384b48f0eab8daf508
|
||||
|
||||
RUN echo "http://dl-cdn.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories
|
||||
|
||||
# trickle
|
||||
# work around issue #16: https://github.com/mariusae/trickle/issues/16
|
||||
RUN set -eux; \
|
||||
apk add --no-cache libcurl libtirpc-dev libevent \
|
||||
&& apk add --no-cache --virtual .build-deps curl make automake autoconf libtool alpine-sdk libevent-dev; \
|
||||
cd /tmp; \
|
||||
curl -L -o trickle.tgz https://github.com/mariusae/trickle/archive/${TRICKLE_VERSION}.tar.gz; \
|
||||
echo "$TRICKLE_SHA256SUM trickle.tgz" | sha256sum -c -; \
|
||||
tar xvzf trickle.tgz; \
|
||||
cd "trickle-${TRICKLE_VERSION}"; \
|
||||
export CFLAGS=-I/usr/include/tirpc; \
|
||||
export LDFLAGS=-ltirpc; \
|
||||
autoreconf -if; \
|
||||
./configure; \
|
||||
make install-exec-am install-trickleoverloadDATA; \
|
||||
rm -rf /tmp/*; \
|
||||
apk del .build-deps;
|
||||
|
||||
# megasync: https://gist.github.com/MaxKh/ae9ce059899f34ed2bd09e6995a91a08
|
||||
RUN apk add --no-cache libcurl c-ares crypto++ zlib openssl sqlite-libs readline libsodium libtirpc-dev libevent-dev \
|
||||
&& apk add --no-cache --virtual .build-deps \
|
||||
curl file git make automake autoconf libtool gcc libc-dev g++ curl-dev c-ares-dev crypto++-dev zlib-dev openssl-dev sqlite-dev readline-dev libsodium-dev \
|
||||
&& git clone -b ${MEGA_VERSION} --depth 1 https://github.com/meganz/sdk.git \
|
||||
&& cd sdk \
|
||||
&& ./autogen.sh \
|
||||
&& CXXFLAGS="-O2 -Wno-deprecated-declarations -Wno-psabi --param ggc-min-expand=1" ./configure --without-freeimage \
|
||||
&& make examples/megacli \
|
||||
&& make examples/megasimplesync \
|
||||
&& make install \
|
||||
&& cd ../ \
|
||||
&& rm -rf sdk \
|
||||
&& apk del .build-deps
|
26
docker-compose.yml
Normal file
26
docker-compose.yml
Normal file
|
@ -0,0 +1,26 @@
|
|||
version: '3.4'
|
||||
|
||||
services:
|
||||
megasync_trickle:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
image: megasync_trickle
|
||||
container_name: megasync_trickle
|
||||
tmpfs:
|
||||
- /tmp
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
# map your local sync dir to /mnt/megasync
|
||||
- /path/to/your/local/dir:/mnt/megasync
|
||||
entrypoint: /bin/sh
|
||||
# change trickle parameters here (or remove trickle entirely)
|
||||
# -d RATE: Limit the download bandwidth consumption to RATE KB/s
|
||||
# -u RATE: Limit the upload bandwidth consumption to RATE KB/s
|
||||
# see other parameters at https://linux.die.net/man/1/trickle
|
||||
# megasimplesync localdir remotedir
|
||||
command: -c "trickle -s -d 1024 -u 1024 megasimplesync /mnt/megasync /"
|
||||
environment:
|
||||
- MEGA_DEBUG=0 # set to 1 or 2 to see mega debugging output
|
||||
- MEGA_EMAIL=user@domain.com # your mega username
|
||||
- MEGA_PWD=your_mega_password # your mega password
|
Loading…
Reference in New Issue
Block a user