Integrate aria2c support & fix unintended behavior for docker image (#1073)
* Update Dockerfile * Create docker-bootstrap.sh In addition to spawn cloudreve, this script generates password for aria2 so that users can take advantage of aria2 more conveniently instead of configuring aria2 by themselves.master
parent
762f0f9c68
commit
45597adcd3
10
Dockerfile
10
Dockerfile
|
|
@ -46,13 +46,17 @@ ARG TZ="Asia/Shanghai"
|
|||
ENV TZ ${TZ}
|
||||
|
||||
COPY --from=be-builder /go/bin/Cloudreve /cloudreve/cloudreve
|
||||
COPY docker-bootstrap.sh /cloudreve/bootstrap.sh
|
||||
|
||||
RUN apk upgrade \
|
||||
&& apk add bash tzdata \
|
||||
&& apk add bash tzdata aria2 \
|
||||
&& ln -s /cloudreve/cloudreve /usr/bin/cloudreve \
|
||||
&& ln -sf /usr/share/zoneinfo/${TZ} /etc/localtime \
|
||||
&& echo ${TZ} > /etc/timezone \
|
||||
&& rm -rf /var/cache/apk/*
|
||||
&& rm -rf /var/cache/apk/* \
|
||||
&& mkdir /etc/cloudreve \
|
||||
&& ln -s /etc/cloudreve/cloureve.db /cloudreve/cloudreve.db \
|
||||
&& ln -s /etc/cloudreve/conf.ini /cloudreve/conf.ini
|
||||
|
||||
# cloudreve use tcp 5212 port by default
|
||||
EXPOSE 5212/tcp
|
||||
|
|
@ -65,4 +69,4 @@ VOLUME /etc/cloudreve
|
|||
|
||||
VOLUME /data
|
||||
|
||||
ENTRYPOINT ["cloudreve"]
|
||||
ENTRYPOINT ["sh", "/cloudreve/bootstrap.sh"]
|
||||
|
|
|
|||
|
|
@ -0,0 +1,15 @@
|
|||
#!/bin/sh
|
||||
GREEN='\033[0;32m'
|
||||
RESET='\033[0m'
|
||||
if [ ! -f /etc/cloudreve/aria2c.conf ]; then
|
||||
echo -e "[${GREEN}aria2c${RESET}] aria2c config not found. Generating..."
|
||||
secret=$(tr -dc A-Za-z0-9 </dev/urandom | head -c 13)
|
||||
echo -e "[${GREEN}aria2c${RESET}] Generated port: 6800, secret: $secret"
|
||||
cat <<EOF > /etc/cloudreve/aria2c.conf
|
||||
enable-rpc=true
|
||||
rpc-listen-port=6800
|
||||
rpc-secret=$secret
|
||||
EOF
|
||||
fi
|
||||
aria2c --conf-path /etc/cloudreve/aria2c.conf -D
|
||||
cloudreve
|
||||
Loading…
Reference in New Issue