Compare commits

..
Author SHA1 Message Date
junv 0b667a5f3c Rollback caddy to 2.0.0 2021-01-04 23:17:01 +11:00
junv cd4bba07a5 rollback caddy 2021-01-04 23:09:46 +11:00
junv ee1c069aec try to fix X-Forwarded-For issue 2021-01-04 23:03:28 +11:00
junv 9c43cd515d Merge branch 'master' into x-forwarded-headers 2021-01-04 22:47:56 +11:00
junv 728f30eda2 removing X-Forwarded headers from incoming requests 2021-01-04 22:46:42 +11:00
junv 7cb68b4746 tidy up 2021-01-01 22:26:07 +11:00
19 changed files with 95 additions and 307 deletions
-12
View File
@@ -1,12 +0,0 @@
# These are supported funding model platforms
github: [wahyd4]
patreon: # Replace with a single Patreon username
open_collective: # Replace with a single Open Collective username
ko_fi: # Replace with a single Ko-fi username
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
liberapay: # Replace with a single Liberapay username
issuehunt: # Replace with a single IssueHunt username
otechie: # Replace with a single Otechie username
custom: https://www.paypal.me/junvzhao
+2 -36
View File
@@ -36,12 +36,8 @@ jobs:
--build-arg BUILD_DATE=$(date -u +'%Y-%m-%dT%H:%M:%SZ') \
--build-arg VCS_REF=${GITHUB_SHA::8} \
${TAGS} --file Dockerfile .
-
name: Set up QEMU
uses: docker/setup-qemu-action@v1
-
name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
- name: Set up Docker Buildx
uses: crazy-max/ghaction-docker-buildx@v3
-
name: Cache Docker layers
uses: actions/cache@v2
@@ -57,45 +53,15 @@ jobs:
docker buildx build --output "type=image,push=false" ${{ steps.prepare.outputs.buildx_args }}
-
name: Login to DockerHub
if: contains(github.ref, '/heads/master') || contains(github.ref, '/tags/v')
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKER_HUB_USER }}
password: ${{ secrets.DOCKER_HUB_PASS }}
-
name: Push docker images to Dockerhub
if: contains(github.ref, '/heads/master') || contains(github.ref, '/tags/v')
run: |
docker buildx build --output "type=image,push=true" ${{ steps.prepare.outputs.buildx_args }}
-
name: Inspect image
if: contains(github.ref, '/heads/master') || contains(github.ref, '/tags/v')
run: |
docker buildx imagetools inspect ${{ steps.prepare.outputs.docker_image }}:${{ steps.prepare.outputs.version }}
-
name: Update APP VERSION
if: contains(github.ref, '/tags/v')
run: |
VERSION=${GITHUB_REF#refs/tags/v}
echo $VERSION > APP_VERSION
-
name: Commit changes
if: contains(github.ref, '/tags/v')
uses: EndBug/add-and-commit@v7
with:
author_name: junv-repo-bot
author_email: me@toozhao.com
message: 'Update version'
add: 'APP_VERSION'
push: true
-
name: Update tag
if: contains(github.ref, '/tags/v')
env:
API_KEY: ${{ secrets.BadgeAPIKey }}
run: |
VERSION=${GITHUB_REF#refs/tags/v}
curl -XPUT -D- 'https://badges.toozhao.com/val/aria2-ui-docker' \
-H 'Content-Type: application/json' \
-H 'API_KEY': ${API_KEY} \
-d '{"value": "'${VERSION}'"}' || true
-1
View File
@@ -1 +0,0 @@
4.8.2.2
+8 -11
View File
@@ -4,25 +4,22 @@
{$DOMAIN}
redir /ui / 301
redir /ui/ / 301
redir /ui /ui/ 301
redir /rclone /rclone/ 301
redir /files /files/ 301
reverse_proxy /jsonrpc 127.0.0.1:6800
route /rclone/* {
uri strip_prefix /rclone
reverse_proxy 127.0.0.1:5572
reverse_proxy http://localhost:5572
}
route /files/* {
uri strip_prefix /files
reverse_proxy 127.0.0.1:8080
route /ui/* {
uri strip_prefix /ui
root * /usr/local/www/aria2
file_server
}
root * /usr/local/www/aria2
file_server
reverse_proxy 127.0.0.1:8080
reverse_proxy /jsonrpc 127.0.0.1:6800
encode gzip
log {
+4 -23
View File
@@ -1,19 +1,4 @@
FROM golang:alpine AS build-forego
RUN apk add --no-cache git openssh
WORKDIR /app
RUN git clone https://github.com/wahyd4/forego.git \
&& cd forego \
&& git checkout 20180216151118 \
&& go mod init \
&& go mod vendor \
&& go mod download \
&& go build -o forego \
&& chmod +x forego
FROM alpine:edge
FROM alpine:latest
LABEL AUTHOR=Junv<wahyd4@gmail.com>
@@ -21,8 +6,7 @@ WORKDIR /app
ENV RPC_SECRET=""
ENV ENABLE_AUTH=false
ENV ENABLE_RCLONE=true
ENV DOMAIN=:80
ENV DOMAIN=http://localhost
ENV ARIA2_USER=user
ENV ARIA2_PWD=password
ENV ARIA2_SSL=false
@@ -33,13 +17,10 @@ ENV CADDYPATH=/app
ENV RCLONE_CONFIG=/app/conf/rclone.conf
ENV XDG_DATA_HOME=/app/.caddy/data
ENV XDG_CONFIG_HOME=/app/.caddy/config
ENV RCLONE_CONFIG_BASE64=""
ADD install.sh aria2c.sh caddy.sh Procfile init.sh start.sh rclone.sh new-version-checker.sh APP_VERSION /app/
ADD install.sh aria2c.sh caddy.sh Procfile init.sh start.sh rclone.sh /app/
ADD conf /app/conf
ADD Caddyfile SecureCaddyfile HerokuCaddyfile /usr/local/caddy/
COPY --from=build-forego /app/forego/forego /app
ADD Caddyfile SecureCaddyfile /usr/local/caddy/
RUN ./install.sh
-36
View File
@@ -1,36 +0,0 @@
{
debug
admin off
auto_https off
}
:PORT
basicauth / {
ARIA2_USER ARIA2_PWD_ENCRYPT
}
redir /ui / 301
redir /ui/ / 301
redir /rclone /rclone/ 301
redir /files /files/ 301
reverse_proxy /jsonrpc 127.0.0.1:6800
route /rclone/* {
uri strip_prefix /rclone
reverse_proxy 127.0.0.1:5572
}
route /files/* {
uri strip_prefix /files
reverse_proxy 127.0.0.1:8080
}
root * /usr/local/www/aria2
file_server
encode gzip
log {
output stderr
}
+1 -2
View File
@@ -1,5 +1,4 @@
filebrowser: /app/filebrowser -p 8080 -d /app/filebrowser.db -r /data
caddy: /app/caddy.sh
filebrowser: /app/filebrowser -p 8080 -d /app/filebrowser.db -r /data -b /files
aria2c: /app/aria2c.sh
rclone: /app/rclone.sh
newer_version_checker: /app/new-version-checker.sh
+14 -19
View File
@@ -5,11 +5,7 @@ Aria2 + AriaNg
[![](https://images.microbadger.com/badges/image/wahyd4/aria2-ui.svg)](https://microbadger.com/images/wahyd4/aria2-ui "Get your own image badge on microbadger.com")
[![Docker Pulls](https://img.shields.io/docker/pulls/wahyd4/aria2-ui.svg)](https://hub.docker.com/r/wahyd4/aria2-ui/)
[![Github Build](https://github.com/wahyd4/aria2-ariang-docker/workflows/Docker%20Image%20CI/badge.svg)](https://github.com/wahyd4/aria2-ariang-docker/actions)
[![Deploy](https://www.herokucdn.com/deploy/button.svg)](https://heroku.com/deploy?template=https://github.com/wahyd4/aria2-ariang-docker/tree/master)
[![Page Views Count](https://badges.toozhao.com/badges/01EJ791D8BB43PDS8D7PP7H0YE/green.svg)](https://badges.toozhao.com/stats/01EJ791D8BB43PDS8D7PP7H0YE "Get your own page views count badge on badges.toozhao.com")
[![Page Views Count](https://badges.toozhao.com/badges/01EJ791D8BB43PDS8D7PP7H0YE/green.svg)](https://badges.toozhao.com/badges/01EJ791D8BB43PDS8D7PP7H0YE/green.svg "Get your own page views count badge on badges.toozhao.com")
<img src="https://raw.githubusercontent.com/wahyd4/work-in-australia/766592ac6318027d7b3c334d8c50ca80818eeff8/wepay.jpg" alt="buy me a drink" width="120"/>
@@ -44,7 +40,7 @@ File Browser
* 自动 HTTPS Let's Encrypt
* 支持绑定自定义用户ID,可以主机上的非`root`用户,也可以管理下载的文件
* Basic Auth 用户认证
* 文件管理和视频播放 ([FileBrowser](https://filebrowser.xyz/),注意默认情况下,只能访问和管理 `/data` 目录下的文件)
* 文件管理和视频播放 ([File Browser](https://filebrowser.xyz/),注意默认情况下,只能访问和管理 `/data` 目录下的文件)
* 支持ARM CPU 架构,因此可以在树莓派等设备上运行,
## 推荐使用的docker image tag
@@ -61,10 +57,10 @@ File Browser
docker buildx build --platform linux/arm/v7,linux/arm64,linux/amd64 -t aria2-ui .
```
* Aria2: <http://yourip>
* Filebrowser: <http://yourip/files>
* Aria2: <http://yourip/ui/>
* FileManger: <http://yourip>
* Rclone: <http://yourip/rclone>
* 请使用 admin/admin 进行登录Filebrowser, 在如果没有修改`ARIA2_USER`,`ARIA2_PWD`的情况下,请使用`user`/`password`登录`Rclone`
* 请使用 admin/admin 进行登录, 在如果没有修改`ARIA2_USER`,`ARIA2_PWD`的情况下,请使用`user`/`password`登录`Rclone`
### 开启所有功能
```bash
docker run -d --name ariang \
@@ -106,16 +102,15 @@ services:
### 支持的 Docker 环境变量
* `ENABLE_AUTH` 启用 Basic auth(网页简单认证) 用户认证
* `ENABLE_RCLONE` 是否启用 RCLONE,由于Rclone 的初次运行需要从Github 下载文件,由于你懂的原因,可能文件下载失败,进而导致整个程序崩溃,这时你需要设置为`false`
* `ARIA2_USER` Basic Auth 用户认证用户名Rclone也使用该参数
* `ARIA2_PWD` Basic Auth 密码,Rclone也使用该参数
* `ARIA2_EXTERNAL_PORT` 从外部可以访问到的 Aria2 端口,默认为 HTTP 的`80`
* `PUID` 需要绑定主机的Linux用户ID可以通过`cat /etc/passwd` 查看用户列表, 默认UID 是`1000`
* `PGID` 需要绑定的主机的Linux 用户组ID,默认GID 是`1000`
* `RPC_SECRET` Aria2 RPC 加密 token
* `DOMAIN` 绑定的域名, 当绑定的域名为`HTTPS`时,即为启用`HTTPS` 例: `DOMAIN=https://toozhao.com`
* `RCLONE_CONFIG_BASE64` 通过`base64` 字符串的形式配置rclone.conf。主要给在Heroku平台上运行时使用,请使用命令行 `cat /app/conf/rclone.conf | base64` 或者其他任何在线base64在线工具 [比如这个](https://www.base64encode.org/)来把`rclone.conf`的内容生成`base64`字符串。在使用本环境变量的同时,请确保`ENABLE_RCLONE`设置为`true`
* ENABLE_AUTH 启用 Basic auth(网页简单认证) 用户认证
* ARIA2_USER Basic Auth 用户认证用户名,Rclone也使用该参数
* ARIA2_PWD Basic Auth 密码Rclone也使用该参数
* ARIA2_EXTERNAL_PORT 从外部可以访问到的 Aria2 端口,默认为 HTTP 的`80`
* PUID 需要绑定主机的Linux用户ID,可以通过`cat /etc/passwd` 查看用户列表, 默认UID 是`1000`
* PGID 需要绑定主机的Linux 用户ID,默认GID 是`1000`
* RPC_SECRET Aria2 RPC 加密 token
* DOMAIN 绑定的域名, 当绑定的域名为`HTTPS`时,即为启用`HTTPS` 例: `DOMAIN=https://toozhao.com`
### 支持的 Docker volume 属性
* `/data` 用来放置所有下载的文件的目录
+15 -22
View File
@@ -5,12 +5,7 @@ English | [简体中文](https://github.com/wahyd4/aria2-ariang-docker/blob/mast
[![](https://images.microbadger.com/badges/image/wahyd4/aria2-ui.svg)](https://microbadger.com/images/wahyd4/aria2-ui "Get your own image badge on microbadger.com")
[![Docker Pulls](https://img.shields.io/docker/pulls/wahyd4/aria2-ui.svg)](https://hub.docker.com/r/wahyd4/aria2-ui/)
[![Github Build](https://github.com/wahyd4/aria2-ariang-docker/workflows/Docker%20Image%20CI/badge.svg)](https://github.com/wahyd4/aria2-ariang-docker/actions)
[![Deploy](https://www.herokucdn.com/deploy/button.svg)](https://heroku.com/deploy?template=https://github.com/wahyd4/aria2-ariang-docker/tree/master)
[![Page Views Count](https://badges.toozhao.com/svg/aria2-ariang-docker)](https://badges.toozhao.com/stats/aria2-ariang-docker "Page Views Count")
[![Page Views Count](https://badge.home.toozhao.com/svg/aria2-ariang-docker)](https://badge.home.toozhao.com/svg/aria2-ariang-docker "Page Views Count")
**If you like this project, please consider support me / 如果喜欢本项目,请考虑打赏,谢谢!**
@@ -47,11 +42,11 @@ File Browser
* [Aria2 (SSL support)](https://aria2.github.io)
* [AriaNg](https://github.com/mayswind/AriaNg)
* [Rclone](https://rclone.org/)
* [File Browser](https://filebrowser.xyz/): Files mangement and videos playing
* Auto HTTPS Let's Encrypt
* Bind non root user into container, so non root user can also manage downloaded files.
* Basic Auth
* Support ARM CPUs as well, all supported CPU platforms can be found [here](https://cloud.docker.com/repository/docker/wahyd4/aria2-ui/tags)
* File indexing and video playing ([File Browser](https://filebrowser.xyz/))
* Support ARM CPUs, but please choose a proper [docker image TAG](https://cloud.docker.com/repository/docker/wahyd4/aria2-ui/tags)
* Cloud Storage platforms synchronization
## Recommended versions
@@ -68,10 +63,10 @@ File Browser
docker run -d --name aria2-ui -p 80:80 wahyd4/aria2-ui
```
* Aria2: <http://yourip>
* FileManger: <http://yourip/files>
* Aria2: <http://yourip/ui/>
* FileManger: <http://yourip>
* Rclone: <http://yourip/rclone>
* Please use `admin`/`admin` as username and password to login `Filebrowser` for the first time. And use `user`/`password` to login `Rclone` if you don't update `ARIA2_USER` and `ARIA2_PWD`
* Please use `admin`/`admin` as username and password to login for the first time, and `user`/`password` to login `Rclone` if you don't update `ARIA2_USER` and `ARIA2_PWD`
### Full features run
@@ -86,7 +81,7 @@ File Browser
-e DOMAIN=https://example.com \
-e ARIA2_SSL=false \
-e ARIA2_USER=user \
-e ARIA2_PWD=password \
-e ARIA2_PWD=pwd \
-e ARIA2_EXTERNAL_PORT=443 \
-v /yourdata:/data \
-v /app/a.db:/app/filebrowser.db \
@@ -117,16 +112,14 @@ Then simply run `docker-compose up -d`, that's it!
### Supported Environment Variables
* `ENABLE_AUTH` whether to enable Basic auth
* `ENABLE_RCLONE` whether to disable Rclone, if you running this container offline or do not have stable connection to Github, please set to `false`
* `ARIA2_USER` Basic Auth username, Rclone GUI uses it as well.
* `ARIA2_PWD` Basic Auth password, Rclone GUI uses it as well.
* `ARIA2_EXTERNAL_PORT` The Aria2 port which exposed to public to access to
* `PUID` Bind Linux UID into container which means you can use non `root` user to manage downloaded files, default UID is `1000`
* `PGID` Bind Linux GID into container, default GID is 1000
* `RPC_SECRET` The Aria2 RPC secret token
* `DOMAIN` The domain you'd like to bind, when domain is a `https://` thing, then auto TLS feature will be enabled
* `RCLONE_CONFIG_BASE64` Inject and config Rclone through `base64` string, which is the only way to use Rclone on Heroku. Please use `cat /app/conf/rclone.conf | base64` or any base64 online tools such as [this](https://www.base64encode.org/) to encode your `rclone.conf` as bse64 string. Note, you need to set `ENABLE_RCLONE` to true as well.
* ENABLE_AUTH whether to enable Basic auth
* ARIA2_USER Basic Auth username, Rclone GUI uses it as well.
* ARIA2_PWD Basic Auth password, Rclone GUI uses it as well.
* ARIA2_EXTERNAL_PORT The Aria2 port which exposed to public to access to
* PUID Bind Linux UID into container which means you can use non `root` user to manage downloaded files, default UID is `1000`
* PGID Bind Linux GID into container, default GID is 1000
* RPC_SECRET The Aria2 RPC secret token
* DOMAIN The domain you'd like to bind, when domain is a `https://` thing, then auto SSL feature will be enabled
### Supported Volumes
+15 -15
View File
@@ -1,29 +1,29 @@
#{
# auto_https off
#}
{$DOMAIN}
basicauth / {
ARIA2_USER ARIA2_PWD_ENCRYPT
}
redir /ui / 301
redir /ui/ / 301
redir /ui /ui/ 301
redir /rclone /rclone/ 301
redir /files /files/ 301
reverse_proxy /jsonrpc 127.0.0.1:6800
route /rclone/* {
uri strip_prefix /rclone
reverse_proxy 127.0.0.1:5572
reverse_proxy http://localhost:5572
}
route /files/* {
uri strip_prefix /files
reverse_proxy 127.0.0.1:8080
route /ui/* {
uri strip_prefix /ui
root * /usr/local/www/aria2
file_server
}
root * /usr/local/www/aria2
file_server
basicauth /ui/* {
ARIA2_USER ARIA2_PWD_ENCRYPT
}
reverse_proxy 127.0.0.1:8080
reverse_proxy /jsonrpc 127.0.0.1:6800
encode gzip
log {
-45
View File
@@ -1,45 +0,0 @@
{
"name": "wahyd4/aria2-ariang-docker demo",
"description": "A demo of Aria2 + AriaNg + Filebrowser + Rclone",
"repository": "https://github.com/wahyd4/aria2-ariang-docker",
"keywords": ["docker", "aria2", "rclone", "fllebrowser", "ariang"],
"stack": "container",
"success_url": "/",
"env": {
"ENABLE_AUTH": {
"description": "This value must be heroku when running in Heroku",
"value": "heroku",
"required": false
},
"RCLONE_CONFIG_BASE64": {
"description": "This value is the base64 string of your preconfigured /app/conf/rclone.conf content",
"value": "",
"required": false
},
"ARIA2_USER": {
"description": "Username to login to AriaNg",
"value": "user",
"required": false
},
"ARIA2_PWD": {
"description": "Password to login to AriaNg",
"value": "password",
"required": false
},
"ARIA2_EXTERNAL_PORT": {
"description": "External port for apps, it should be 443 when running in Heroku",
"value": "443",
"required": false
},
"PUID": {
"description": "The Linux user's ID that to run the app",
"value": "0",
"required": false
},
"PGID": {
"description": "The Linux group's ID that to run the app",
"value": "0",
"required": false
}
}
}
+2 -2
View File
@@ -5,7 +5,7 @@ RPC_SECRET_BASE64=$(echo -n ${RPC_SECRET}|base64)
sed -i 's/secret:\"\"/secret:\"'"${RPC_SECRET_BASE64}"'\"/g' /usr/local/www/aria2/js/aria-ng*.js
if [ "$ARIA2_SSL" = "true" ]; then
echo "[INFO] Start aria2 with secure config"
echo "Start aria2 with secure config"
/usr/bin/aria2c --conf-path="/app/conf/aria2.conf" \
--enable-rpc --rpc-listen-all \
@@ -15,7 +15,7 @@ echo "[INFO] Start aria2 with secure config"
else
echo "[INFO] Start aria2 with standard mode"
echo "Start aria2 with standard mode"
/usr/bin/aria2c --conf-path="/app/conf/aria2.conf" --enable-rpc --rpc-listen-all
fi
+10 -24
View File
@@ -1,31 +1,17 @@
#! /bin/bash -eu
echo "[INFO] Run aria2c and ariaNG"
echo "[INFO] Generate basic auth password for caddy"
ARIA2_PWD_ENCRYPT=$(caddy hash-password -plaintext ${ARIA2_PWD})
case $ENABLE_AUTH in
true)
echo "[INFO] Use Basic Auth config file "
echo "Run aria2c and ariaNG"
if [ "$ENABLE_AUTH" = "true" ]; then
echo "Using Basic Auth config file "
export CADDY_FILE=/usr/local/caddy/SecureCaddyfile
sed -i 's/ARIA2_USER/'"${ARIA2_USER}"'/g' ${CADDY_FILE}
sed -i 's/ARIA2_PWD_ENCRYPT/'"${ARIA2_PWD_ENCRYPT}"'/g' ${CADDY_FILE}
;;
heroku)
echo "[INFO] Run Caddy with Heroku mode"
export CADDY_FILE=/usr/local/caddy/HerokuCaddyfile
sed -i 's/ARIA2_USER/'"${ARIA2_USER}"'/g' ${CADDY_FILE}
sed -i 's/ARIA2_PWD_ENCRYPT/'"${ARIA2_PWD_ENCRYPT}"'/g' ${CADDY_FILE}
sed -i 's/PORT/'"${PORT}"'/g' ${CADDY_FILE}
;;
*)
echo "[INFO] Use caddy without Basic Auth"
echo "**** generate basic auth password for caddy ****"
ARIA2_PWD_ENCRYPT=`caddy hash-password -plaintext ${ARIA2_PWD}`
sed -i 's/ARIA2_USER/'"${ARIA2_USER}"'/g' /usr/local/caddy/SecureCaddyfile
sed -i 's/ARIA2_PWD_ENCRYPT/'"${ARIA2_PWD_ENCRYPT}"'/g' /usr/local/caddy/SecureCaddyfile
else
echo "Using caddy without Basic Auth"
export CADDY_FILE=/usr/local/caddy/Caddyfile
;;
esac
fi
/usr/local/bin/caddy run -config ${CADDY_FILE} -adapter=caddyfile
+2 -2
View File
@@ -65,5 +65,5 @@ save-session=/app/conf/aria2.session
# 定时保存会话, 0为退出时才保存, 需1.16.1以上版本, 默认:0
save-session-interval=10
# BT trackers from https://trackerslist.com/best.txt updated on 2021-06-06
bt-tracker=http://1337.abcvg.info:80/announce,http://nyaa.tracker.wf:7777/announce,http://opentracker.xyz:80/announce,http://rt.tace.ru:80/announce,http://share.camoe.cn:8080/announce,http://t.nyaatracker.com:80/announce,http://torrentsmd.com:8080/announce,http://tr.cili001.com:8070/announce,http://tracker-cdn.moeking.me:2095/announce,http://tracker.anirena.com:80/announce,http://tracker.anirena.com:80/b16a15d9a238d1f59178d3614b857290/announce,http://tracker.anonwebz.xyz:8080/announce,http://tracker.bt4g.com:2095/announce,http://tracker.files.fm:6969/announce,http://tracker.gbitt.info:80/announce,http://tracker.ipv6tracker.ru:80/announce,http://tracker.noobsubs.net:80/announce,http://tracker.shittyurl.org:80/announce,http://tracker.tfile.co:80/announce,http://tracker.tfile.me:80/announce,http://tracker.trackerfix.com:80/announce,http://vps02.net.orel.ru:80/announce,https://1337.abcvg.info:443/announce,https://tr.torland.ga:443/announce,https://tracker.coalition.space:443/announce,https://tracker.gbitt.info:443/announce,https://tracker.lilithraws.cf:443/announce,https://tracker.nanoha.org:443/announce,https://tracker.nitrix.me:443/announce,https://tracker.parrotsec.org:443/announce,https://tracker.shittyurl.org:443/announce,https://tracker.tamersunion.org:443/announce,https://w.wwwww.wtf:443/announce,udp://6rt.tace.ru:80/announce,udp://9.rarbg.com:2830/announce,udp://9.rarbg.me:2710/announce,udp://9.rarbg.to:2710/announce,udp://app.icon256.com:8000/announce,udp://bubu.mapfactor.com:6969/announce,udp://discord.heihachi.pw:6969/announce,udp://exodus.desync.com:6969/announce,udp://explodie.org:6969/announce,udp://fe.dealclub.de:6969/announce,udp://inferno.demonoid.is:3391/announce,udp://ipv6.tracker.zerobytes.xyz:16661/announce,udp://mail.realliferpg.de:6969/announce,udp://movies.zsw.ca:6969/announce,udp://mts.tvbit.co:6969/announce,udp://open.demonii.com:1337/announce,udp://open.stealth.si:80/announce,udp://opentor.org:2710/announce,udp://opentracker.i2p.rocks:6969/announce,udp://p4p.arenabg.ch:1337/announce,udp://p4p.arenabg.com:1337/announce,udp://pow7.com:80/announce,udp://retracker.hotplug.ru:2710/announce,udp://retracker.lanta-net.ru:2710/announce,udp://retracker.netbynet.ru:2710/announce,udp://retracker01-msk-virt.corbina.net:80/announce,udp://t1.leech.ie:1337/announce,udp://t2.leech.ie:1337/announce,udp://thetracker.org:80/announce,udp://torrentclub.online:54123/announce,udp://tracker-de.ololosh.space:6969/announce,udp://tracker.0x.tf:6969/announce,udp://tracker.altrosky.nl:6969/announce,udp://tracker.army:6969/announce,udp://tracker.beeimg.com:6969/announce,udp://tracker.birkenwald.de:6969/announce,udp://tracker.blacksparrowmedia.net:6969/announce,udp://tracker.breizh.pm:6969/announce,udp://tracker.ccp.ovh:6969/announce,udp://tracker.cyberia.is:6969/announce,udp://tracker.dler.com:6969/announce,udp://tracker.internetwarriors.net:1337/announce,udp://tracker.moeking.me:6969/announce,udp://tracker.nrx.me:6969/announce,udp://tracker.ololosh.space:6969/announce,udp://tracker.openbittorrent.com:6969/announce,udp://tracker.opentrackr.org:1337/announce,udp://tracker.shkinev.me:6969/announce,udp://tracker.theoks.net:6969/announce,udp://tracker.tiny-vps.com:6969/announce,udp://tracker.torrent.eu.org:451/announce,udp://tracker.uw0.xyz:6969/announce,udp://tracker.zerobytes.xyz:1337/announce,udp://tracker0.ufibox.com:6969/announce,udp://tracker1.bt.moack.co.kr:80/announce,udp://tracker1.itzmx.com:8080/announce,udp://tracker2.dler.com:80/announce,udp://tracker2.dler.org:80/announce,udp://tracker2.itzmx.com:6961/announce,udp://tracker3.itzmx.com:6961/announce,udp://tracker4.itzmx.com:2710/announce,udp://u.wwwww.wtf:1/announce,udp://valakas.rollo.dnsabr.com:2710/announce,udp://vibe.community:6969/announce,udp://wassermann.online:6969/announce,udp://www.torrent.eu.org:451/announce
# BT trackers from https://raw.githubusercontent.com/ngosang/trackerslist/master/trackers_best_ip.txt
bt-tracker=udp://62.138.0.158:6969/announce,udp://188.241.58.209:6969/announce,udp://93.158.213.92:1337/announce,udp://62.210.97.59:1337/announce,udp://151.80.120.113:2710/announce,udp://151.80.120.113:2710/announce,udp://165.231.0.116:80/announce,udp://208.83.20.20:6969/announce,udp://37.235.174.46:2710/announce,udp://185.181.60.67:80/announce,udp://54.37.235.149:6969/announce,udp://89.234.156.205:451/announce,udp://35.156.19.129:6969/announce,udp://159.100.245.181:6969/announce,udp://51.15.40.114:80/announce,udp://142.44.243.4:1337/announce,udp://176.113.71.19:6961/announce,udp://5.206.54.49:6969/announce,udp://184.105.151.164:6969/announce,udp://51.254.249.186:6969/announce
-3
View File
@@ -1,3 +0,0 @@
build:
docker:
web: Dockerfile
+2 -2
View File
@@ -1,6 +1,6 @@
#! /bin/bash -eu
echo "[INFO] Update uid and gid to ${PUID}:${PGID}"
echo "**** update uid and gid to ${PUID}:${PGID} ****"
groupmod -o -g "$PGID" junv
usermod -o -u "$PUID" junv
@@ -19,7 +19,7 @@ chmod +x /app/caddy.sh \
/app/rclone.sh \
/app/aria2c.sh
echo "[INFO] Give caddy permissions to use low ports"
echo "**** give caddy permissions to use low ports ****"
setcap cap_net_bind_service=+ep /usr/local/bin/caddy
"${@-sh}"
+13 -10
View File
@@ -1,11 +1,11 @@
#! /bin/sh -eux
echo "[INFO] Set variables for $(arch)"
echo "Set variables for $(arch)"
caddy_version=2.4.5
filebrowser_version=v2.17.2
rclone_version=v1.56.2
ariang_version=1.2.2
caddy_version=2.0.0
filebrowser_version=v2.11.0
rclone_version=v1.53.3
ariang_version=1.1.7
case "$(arch)" in
@@ -13,21 +13,24 @@ case "$(arch)" in
platform=linux-amd64
caddy_file=caddy_${caddy_version}_linux_amd64.tar.gz
rclone_file=rclone-${rclone_version}-${platform}.zip
forego_file=forego-stable-${platform}.tgz
;;
armv7l)
platform=linux-armv7
caddy_file=caddy_${caddy_version}_linux_armv7.tar.gz
rclone_file=rclone-${rclone_version}-linux-arm-v7.zip
forego_file=forego-stable-linux-arm.tgz
;;
aarch64)
platform=linux-arm64
caddy_file=caddy_${caddy_version}_linux_arm64.tar.gz
rclone_file=rclone-${rclone_version}-${platform}.zip
forego_file=forego-stable-${platform}.tgz
;;
*)
echo "[ERROR] unsupported arch $(arch), exit now"
echo "unsupported arch $(arch), exit now"
exit 1
;;
esac
@@ -37,7 +40,7 @@ ariang_file=AriaNg-${ariang_version}.zip
adduser -D -u 1000 junv \
&& apk update \
&& apk add runit shadow wget bash curl openrc gnupg aria2 tar mailcap fuse vim --no-cache \
&& apk add runit shadow wget bash curl openrc gnupg aria2 tar mailcap --no-cache \
&& wget -N https://github.com/caddyserver/caddy/releases/download/v${caddy_version}/${caddy_file} \
&& tar -zxf ${caddy_file} \
&& mv caddy /usr/local/bin/ \
@@ -47,6 +50,9 @@ adduser -D -u 1000 junv \
&& tar -zxf ${filebrowser_file} \
&& rm -rf ${filebrowser_file} \
&& rm LICENSE README.md CHANGELOG.md \
&& wget -N https://bin.equinox.io/c/ekMN3bCZFUn/${forego_file} \
&& tar -zxf ${forego_file} \
&& rm -rf ${forego_file} \
&& mkdir -p /usr/local/www \
&& mkdir -p /usr/local/www/aria2 \
&& rm -rf init /app/*.txt \
@@ -65,6 +71,3 @@ adduser -D -u 1000 junv \
&& unzip ${ariang_file} \
&& rm -rf ${ariang_file} \
&& chmod -R 755 /usr/local/www/aria2 \
&& mkdir -p /data/cloud \
&& chown junv:junv /data/cloud \
&& ln -s /data/cloud /app
-24
View File
@@ -1,24 +0,0 @@
#! /bin/bash -u
sleep 5
set -e
APP_VERSION=$(cat APP_VERSION)
set +e
while true; do
echo "[INFO] $(date -u +'%Y-%m-%dT%H:%M:%SZ') Checking for new version against ${APP_VERSION} ..."
newer_version=$(curl -s https://badges.toozhao.com/val/aria2-ui-docker?version=${APP_VERSION})
if [ -z ${newer_version} ]; then
echo "[WARN] $(date -u +'%Y-%m-%dT%H:%M:%SZ') Failed to check new version."
sleep 86400
continue
fi
if [ ${newer_version} != ${APP_VERSION} ]; then
echo "[INFO] $(date -u +'%Y-%m-%dT%H:%M:%SZ') Found newer Docker image version wahyd4/aria2-ui:${newer_version}, please consider to upgrade by using docker pull command to have better user experience."
# check new version daily
sleep 86400
continue
fi
echo "[INFO] $(date -u +'%Y-%m-%dT%H:%M:%SZ') Good job, you are using the latest version docker image"
sleep 86400
done
+7 -18
View File
@@ -1,20 +1,9 @@
#! /bin/bash -eu
if [ "$RCLONE_CONFIG_BASE64" != "" ]; then
echo "[INFO] Config Rclone from RCLONE_CONFIG_BASE64 env"
echo $RCLONE_CONFIG_BASE64 | base64 -d > /app/conf/rclone.conf
echo "[INFO] Config Rclone from RCLONE_CONFIG_BASE64 completed"
fi
if [ "$ENABLE_RCLONE" = "true" ]; then
echo "[INFO] Start Rclone, please make sure you can connect to Github website. if not, please set docker env ENABLE_RCLONE=false"
rclone rcd --rc-web-gui \
--rc-web-gui-no-open-browser \
--rc-addr :5572 \
--rc-user $ARIA2_USER \
--rc-pass $ARIA2_PWD \
--cache-dir /app/.cache
else
echo "[INFO] Skip starting Rclone as it has been disabled"
sleep 3650d
fi
echo "Start Rclone"
rclone rcd --rc-web-gui \
--rc-web-gui-no-open-browser \
--rc-addr :5572 \
--rc-user $ARIA2_USER \
--rc-pass $ARIA2_PWD \
--cache-dir /app/.cache