mirror of
https://github.com/wahyd4/aria2-ariang-docker.git
synced 2026-08-08 21:05:50 +10:00
Using forogo to manage mutliple processes
This commit is contained in:
+13
-10
@@ -2,38 +2,41 @@ FROM alpine:edge
|
||||
|
||||
LABEL AUTHOR=Junv<wahyd4@gmail.com>
|
||||
|
||||
WORKDIR /root
|
||||
WORKDIR /app
|
||||
|
||||
ENV RPC_SECRET=Hello
|
||||
ENV ENABLE_AUTH=false
|
||||
ENV DOMAIN=0.0.0.0:80
|
||||
ENV ARIA2_USER=user
|
||||
ENV ARIA2_PWD=password
|
||||
ENV SSL=false
|
||||
|
||||
RUN apk update \
|
||||
&& apk add wget bash curl openrc gnupg screen aria2 tar --no-cache
|
||||
&& apk add wget bash curl openrc gnupg aria2 tar --no-cache
|
||||
|
||||
RUN curl https://getcaddy.com | bash -s personal
|
||||
RUN curl -fsSL https://filebrowser.xyz/get.sh | bash
|
||||
RUN wget -N https://bin.equinox.io/c/ekMN3bCZFUn/forego-stable-linux-amd64.tgz && tar -zxvf forego-stable-linux-amd64.tgz && rm -rf forego-stable-linux-amd64.tgz
|
||||
|
||||
RUN mkdir -p /usr/local/www && mkdir -p /usr/local/www/aria2
|
||||
ADD conf /root/conf
|
||||
COPY aria2c.sh /root
|
||||
ADD conf /app/conf
|
||||
COPY aria2c.sh caddy.sh Procfile /app/
|
||||
COPY Caddyfile SecureCaddyfile /usr/local/caddy/
|
||||
|
||||
# AriaNg
|
||||
RUN mkdir /usr/local/www/aria2/Download && cd /usr/local/www/aria2 \
|
||||
&& chmod +rw /root/conf/aria2.session \
|
||||
&& chmod +rw /app/conf/aria2.session \
|
||||
&& version=1.1.0 \
|
||||
&& wget -N --no-check-certificate https://github.com/mayswind/AriaNg/releases/download/${version}/AriaNg-${version}.zip && unzip AriaNg-${version}.zip && rm -rf AriaNg-${version}.zip \
|
||||
&& chmod -R 755 /usr/local/www/aria2 \
|
||||
&& chmod +x /root/aria2c.sh
|
||||
&& sed -i 's/6800/80/g' /usr/local/www/aria2/js/aria-ng*.js
|
||||
|
||||
#The folder to store ssl keys
|
||||
VOLUME /root/conf/key
|
||||
# User downloaded files
|
||||
# folder for storing ssl keys
|
||||
VOLUME /app/conf/key
|
||||
|
||||
# file downloading folder
|
||||
VOLUME /data
|
||||
|
||||
EXPOSE 80 443
|
||||
|
||||
CMD ["/bin/sh", "/root/aria2c.sh" ]
|
||||
CMD ["./forego", "start" ]
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
filebrowser: /usr/local/bin/filebrowser -p 8080 -d /app/filebrowser.db -r /data
|
||||
caddy: /app/caddy.sh
|
||||
aria2c: /app/aria2c.sh
|
||||
@@ -1,30 +1,17 @@
|
||||
#! /bin/bash -eu
|
||||
|
||||
echo "Run aria2c and ariaNG"
|
||||
if [ "$ENABLE_AUTH" = "true" ]; then
|
||||
echo "Using Basic Auth config file "
|
||||
CADDY_FILE=/usr/local/caddy/SecureCaddyfile
|
||||
else
|
||||
echo "Using caddy without Basic Auth"
|
||||
CADDY_FILE=/usr/local/caddy/Caddyfile
|
||||
fi
|
||||
|
||||
if [ "$SSL" = "true" ]; then
|
||||
echo "Start aria2 with secure config"
|
||||
|
||||
/usr/bin/aria2c --conf-path="/root/conf/aria2.conf" -D \
|
||||
--enable-rpc --rpc-listen-all \
|
||||
--rpc-certificate=/root/conf/key/aria2.crt \
|
||||
--rpc-private-key=/root/conf/key/aria2.key \
|
||||
/usr/bin/aria2c --conf-path="/app/conf/aria2.conf" \
|
||||
--enable-rpc --rpc-listen-all \
|
||||
--rpc-certificate=/app/conf/key/aria2.crt \
|
||||
--rpc-private-key=/app/conf/key/aria2.key \
|
||||
--rpc-secret="$RPC_SECRET" --rpc-secure \
|
||||
&& (nohup sh -c "/usr/local/bin/filebrowser -p 8080 -d /root/filebrowser.db -l /var/log/file-browser/out.log -r /data" &)\
|
||||
&& /usr/local/bin/caddy -quic --conf ${CADDY_FILE}
|
||||
|
||||
else
|
||||
|
||||
echo "Start aria2 with standard mode"
|
||||
/usr/bin/aria2c --conf-path="/root/conf/aria2.conf" -D \
|
||||
--enable-rpc --rpc-listen-all \
|
||||
&& (nohup sh -c "/usr/local/bin/filebrowser -p 8080 -d /root/filebrowser.db -l /var/log/file-browser/out.log -r /data" &)\
|
||||
&& /usr/local/bin/caddy -quic --conf ${CADDY_FILE}
|
||||
/usr/bin/aria2c --conf-path="/app/conf/aria2.conf" --enable-rpc --rpc-listen-all
|
||||
|
||||
fi
|
||||
|
||||
+10
-8
@@ -2,38 +2,40 @@ FROM arm32v6/alpine:edge
|
||||
|
||||
LABEL AUTHOR=Junv<wahyd4@gmail.com>
|
||||
|
||||
WORKDIR /root
|
||||
WORKDIR /app
|
||||
|
||||
ENV RPC_SECRET=Hello
|
||||
ENV ENABLE_AUTH=false
|
||||
ENV DOMAIN=0.0.0.0:80
|
||||
ENV ARIA2_USER=user
|
||||
ENV ARIA2_PWD=password
|
||||
ENV SSL=false
|
||||
|
||||
RUN apk update \
|
||||
&& apk add wget bash curl openrc gnupg screen aria2 tar --no-cache
|
||||
&& apk add wget bash curl openrc gnupg aria2 tar --no-cache
|
||||
|
||||
RUN curl https://getcaddy.com | bash -s personal
|
||||
RUN curl -fsSL https://filebrowser.xyz/get.sh | bash
|
||||
RUN wget -N https://bin.equinox.io/c/ekMN3bCZFUn/forego-stable-linux-arm.tgz && tar -zxvf forego-stable-linux-arm.tgz && rm -rf forego-stable-linux-arm.tgz
|
||||
|
||||
RUN mkdir -p /usr/local/www && mkdir -p /usr/local/www/aria2
|
||||
ADD conf /root/conf
|
||||
COPY aria2c.sh /root
|
||||
ADD conf /app/conf
|
||||
COPY aria2c.sh caddy.sh Procfile /app/
|
||||
COPY Caddyfile SecureCaddyfile /usr/local/caddy/
|
||||
|
||||
# AriaNg
|
||||
RUN mkdir /usr/local/www/aria2/Download && cd /usr/local/www/aria2 \
|
||||
&& chmod +rw /root/conf/aria2.session \
|
||||
&& chmod +rw /app/conf/aria2.session \
|
||||
&& version=1.1.0 \
|
||||
&& wget -N --no-check-certificate https://github.com/mayswind/AriaNg/releases/download/${version}/AriaNg-${version}.zip && unzip AriaNg-${version}.zip && rm -rf AriaNg-${version}.zip \
|
||||
&& chmod -R 755 /usr/local/www/aria2 \
|
||||
&& chmod +x /root/aria2c.sh
|
||||
&& sed -i 's/6800/80/g' /usr/local/www/aria2/js/aria-ng*.js
|
||||
|
||||
#The folder to store ssl keys
|
||||
VOLUME /root/conf/key
|
||||
VOLUME /app/conf/key
|
||||
# User downloaded files
|
||||
VOLUME /data
|
||||
|
||||
EXPOSE 80 443
|
||||
|
||||
CMD ["/bin/sh", "/root/aria2c.sh" ]
|
||||
CMD ["./forego", "start" ]
|
||||
|
||||
+11
-9
@@ -1,39 +1,41 @@
|
||||
FROM arm64v8/alpine:edge
|
||||
FROM arm64v8/alpine:3.8
|
||||
|
||||
LABEL AUTHOR=Junv<wahyd4@gmail.com>
|
||||
|
||||
WORKDIR /root
|
||||
WORKDIR /app
|
||||
|
||||
ENV RPC_SECRET=Hello
|
||||
ENV ENABLE_AUTH=false
|
||||
ENV DOMAIN=0.0.0.0:80
|
||||
ENV ARIA2_USER=user
|
||||
ENV ARIA2_PWD=password
|
||||
ENV SSL=false
|
||||
|
||||
RUN apk update \
|
||||
&& apk add wget bash curl openrc gnupg screen aria2 tar --no-cache
|
||||
&& apk add wget bash curl openrc gnupg aria2 tar --no-cache
|
||||
|
||||
RUN curl https://getcaddy.com | bash -s personal
|
||||
RUN curl -fsSL https://filebrowser.xyz/get.sh | bash
|
||||
RUN wget -N https://bin.equinox.io/c/ekMN3bCZFUn/forego-stable-linux-arm64.tgz && tar -zxvf forego-stable-linux-arm64.tgz && rm -rf forego-stable-linux-arm64.tgz
|
||||
|
||||
RUN mkdir -p /usr/local/www && mkdir -p /usr/local/www/aria2
|
||||
ADD conf /root/conf
|
||||
COPY aria2c.sh /root
|
||||
ADD conf /app/conf
|
||||
COPY aria2c.sh caddy.sh Procfile /app/
|
||||
COPY Caddyfile SecureCaddyfile /usr/local/caddy/
|
||||
|
||||
# AriaNg
|
||||
RUN mkdir /usr/local/www/aria2/Download && cd /usr/local/www/aria2 \
|
||||
&& chmod +rw /root/conf/aria2.session \
|
||||
&& chmod +rw /app/conf/aria2.session \
|
||||
&& version=1.1.0 \
|
||||
&& wget -N --no-check-certificate https://github.com/mayswind/AriaNg/releases/download/${version}/AriaNg-${version}.zip && unzip AriaNg-${version}.zip && rm -rf AriaNg-${version}.zip \
|
||||
&& chmod -R 755 /usr/local/www/aria2 \
|
||||
&& chmod +x /root/aria2c.sh
|
||||
&& sed -i 's/6800/80/g' /usr/local/www/aria2/js/aria-ng*.js
|
||||
|
||||
#The folder to store ssl keys
|
||||
VOLUME /root/conf/key
|
||||
VOLUME /app/conf/key
|
||||
# User downloaded files
|
||||
VOLUME /data
|
||||
|
||||
EXPOSE 80 443
|
||||
|
||||
CMD ["/bin/sh", "/root/aria2c.sh" ]
|
||||
CMD ["./forego", "start" ]
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
#! /bin/bash -eu
|
||||
|
||||
echo "Run aria2c and ariaNG"
|
||||
if [ "$ENABLE_AUTH" = "true" ]; then
|
||||
echo "Using Basic Auth config file "
|
||||
export CADDY_FILE=/usr/local/caddy/SecureCaddyfile
|
||||
else
|
||||
echo "Using caddy without Basic Auth"
|
||||
export CADDY_FILE=/usr/local/caddy/Caddyfile
|
||||
fi
|
||||
|
||||
/usr/local/bin/caddy -quic --conf ${CADDY_FILE}
|
||||
+2
-2
@@ -57,9 +57,9 @@ log-level=notice
|
||||
|
||||
## 进度保存相关 ##
|
||||
# 从会话文件中读取下载任务
|
||||
input-file=/root/conf/aria2.session
|
||||
input-file=/app/conf/aria2.session
|
||||
# 在Aria2退出时保存`错误/未完成`的下载任务到会话文件
|
||||
save-session=/root/conf/aria2.session
|
||||
save-session=/app/conf/aria2.session
|
||||
# 定时保存会话, 0为退出时才保存, 需1.16.1以上版本, 默认:0
|
||||
save-session-interval=10
|
||||
|
||||
|
||||
Reference in New Issue
Block a user