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.
This commit is contained in:
parent
762f0f9c68
commit
45597adcd3
2 changed files with 22 additions and 3 deletions
10
Dockerfile
10
Dockerfile
|
@ -46,13 +46,17 @@ ARG TZ="Asia/Shanghai"
|
||||||
ENV TZ ${TZ}
|
ENV TZ ${TZ}
|
||||||
|
|
||||||
COPY --from=be-builder /go/bin/Cloudreve /cloudreve/cloudreve
|
COPY --from=be-builder /go/bin/Cloudreve /cloudreve/cloudreve
|
||||||
|
COPY docker-bootstrap.sh /cloudreve/bootstrap.sh
|
||||||
|
|
||||||
RUN apk upgrade \
|
RUN apk upgrade \
|
||||||
&& apk add bash tzdata \
|
&& apk add bash tzdata aria2 \
|
||||||
&& ln -s /cloudreve/cloudreve /usr/bin/cloudreve \
|
&& ln -s /cloudreve/cloudreve /usr/bin/cloudreve \
|
||||||
&& ln -sf /usr/share/zoneinfo/${TZ} /etc/localtime \
|
&& ln -sf /usr/share/zoneinfo/${TZ} /etc/localtime \
|
||||||
&& echo ${TZ} > /etc/timezone \
|
&& 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
|
# cloudreve use tcp 5212 port by default
|
||||||
EXPOSE 5212/tcp
|
EXPOSE 5212/tcp
|
||||||
|
@ -65,4 +69,4 @@ VOLUME /etc/cloudreve
|
||||||
|
|
||||||
VOLUME /data
|
VOLUME /data
|
||||||
|
|
||||||
ENTRYPOINT ["cloudreve"]
|
ENTRYPOINT ["sh", "/cloudreve/bootstrap.sh"]
|
||||||
|
|
15
docker-bootstrap.sh
Normal file
15
docker-bootstrap.sh
Normal file
|
@ -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 a new issue