Initial commit: docker compose config
Release Docker multi arch / docker (push) Has been cancelled
Test Install Script / Test Script Syntax (push) Has been cancelled
Test Install Script / Test on almalinux-10 (default) (push) Has been cancelled
Test Install Script / Test on almalinux-10 (root) (push) Has been cancelled
Test Install Script / Test on almalinux-8 (default) (push) Has been cancelled
Test Install Script / Test on almalinux-8 (root) (push) Has been cancelled
Test Install Script / Test on almalinux-9 (default) (push) Has been cancelled
Test Install Script / Test on almalinux-9 (root) (push) Has been cancelled
Test Install Script / Test on amazonlinux-2 (default) (push) Has been cancelled
Test Install Script / Test on amazonlinux-2 (root) (push) Has been cancelled
Test Install Script / Test on debian-11 (default) (push) Has been cancelled
Test Install Script / Test on debian-11 (root) (push) Has been cancelled
Test Install Script / Test on debian-12 (default) (push) Has been cancelled
Test Install Script / Test on debian-12 (root) (push) Has been cancelled
Test Install Script / Test on debian-13 (default) (push) Has been cancelled
Test Install Script / Test on debian-13 (root) (push) Has been cancelled
Test Install Script / Test on fedora-latest (default) (push) Has been cancelled
Test Install Script / Test on fedora-latest (root) (push) Has been cancelled
Test Install Script / Test on rocky-10 (default) (push) Has been cancelled
Test Install Script / Test on rocky-10 (root) (push) Has been cancelled
Test Install Script / Test on rocky-8 (default) (push) Has been cancelled
Test Install Script / Test on rocky-8 (root) (push) Has been cancelled
Test Install Script / Test on rocky-9 (default) (push) Has been cancelled
Test Install Script / Test on rocky-9 (root) (push) Has been cancelled
Test Install Script / Test on ubuntu-22.04 (default) (push) Has been cancelled
Test Install Script / Test on ubuntu-22.04 (root) (push) Has been cancelled
Test Install Script / Test on ubuntu-24.04 (default) (push) Has been cancelled
Test Install Script / Test on ubuntu-24.04 (root) (push) Has been cancelled

This commit is contained in:
2026-05-30 12:07:11 +00:00
commit 616c6b1c62
381 changed files with 55145 additions and 0 deletions
+6
View File
@@ -0,0 +1,6 @@
FROM alpine
LABEL maintainer "yourok"
RUN apk add --no-cache wget
COPY start.sh /start.sh
ENTRYPOINT /start.sh
+86
View File
@@ -0,0 +1,86 @@
## TorrServer
After starting the container, the latest server is downloaded from GitHub.\
If you need update server to latest, repull container
Source code: https://github.com/YouROK/TorrServer
--------
Author of docker file and scripts [butaford (aka Pavel)](https://github.com/butaford)
--------
### Support platforms
* TorrServer-linux-386
* TorrServer-linux-amd64
* TorrServer-linux-arm5
* TorrServer-linux-arm64
* TorrServer-linux-arm7
--------
### Support env
TS_PORT: TS web port\
TS_PATH: config path and other\
TS_LOGPATHDIR: log path\
TS_LOGFILE: log file name\
TS_WEBLOGFILE: web log file name\
TS_RDB: read only config\
TS_HTTPAUTH: auth for server, accs.db should be in the TS_PATH\
TS_DONTKILL: don't kill server by signal\
TS_TORRENTSDIR: torrents listen directory\
TS_TORRENTADDR: torrents peer listen port\
TS_PUBIPV4: the IP addresses as our peers should see them. May differ from the local interfaces due to NAT or other network configurations\
TS_PUBIPV6: the IP addresses as our peers should see them. May differ from the local interfaces due to NAT or other network configurations\
TS_SEARCHWA: disable auth for search torrents if auth is enable
--------
### Docker run example
```
docker run -p 8090:8090 \
-e TS_PORT=8090 \
-e TS_PATH="/opt/torrserver/config" \
-e TS_LOGPATHDIR="/opt/torrserver/log/" \
-e TS_LOGFILE="ts.log" \
-e TS_WEBLOGFILE="tsweb.log" \
-e TS_RDB=true \
-e TS_HTTPAUTH=true \
-e TS_DONTKILL=true \
-e TS_TORRENTSDIR="/opt/torrserver/torrents" \
-e TS_TORRENTADDR=32000 \
-e TS_PUBIPV4=publicIP \
-e TS_PUBIPV6=publicIP \
-e TS_SEARCHWA=true \
yourok/torrserver
```
--------
### Docker compose example
```
version: '3.6'
services:
torrserver:
container_name: torrserver
image: ghcr.io/yourok/torrserver
restart: unless-stopped
environment:
- TS_PORT=8090
- TS_PATH=/opt/torrserver/config
- TS_LOGPATHDIR=/opt/torrserver/log
- TS_LOGFILE=ts.log
- TS_WEBLOGFILE=tsweb.log
- TS_RDB=false
- TS_HTTPAUTH=true
- TS_DONTKILL=true
- TS_TORRENTSDIR=/opt/torrserver/torrents
- TS_TORRENTADDR=:32000
- TS_PUBIPV4=publicIP
- TS_PUBIPV6=publicIP
- TS_SEARCHWA=true
ports:
- 8090:8090
volumes:
- ./torrserver/config:/opt/torrserver/config
- ./torrserver/log:/opt/torrserver/log
- ./torrserver/torrents:/opt/torrserver/torrents
```
+9
View File
@@ -0,0 +1,9 @@
FROM debian:bookworm-slim as builder
RUN mkdir /src
COPY ./ /src
RUN /src/cp.sh
FROM scratch
COPY --from=builder /app/TorrServer /
WORKDIR /
ENTRYPOINT [ "/TorrServer" ]
+30
View File
@@ -0,0 +1,30 @@
## TorrServer
A lightweight container that contains a single TorrServer file
Source code: https://github.com/YouROK/TorrServer
--------
### Support platforms
* TorrServer-linux-386
* TorrServer-linux-amd64
* TorrServer-linux-arm5
* TorrServer-linux-arm64
* TorrServer-linux-arm7
--------
### Docker run example
```
docker run -p 8090:8090 yourok/torrlite:TAG [ ARGS ]
```
TAG - tag of version in docker hub eg MatriX.134 \
ARGS - args of torrserver
You can mount a directory like -v /your/local/path/:/cfg and write logs etc there
Example of run with args:
```
docker run -p 8099:8099 yourok/torrlite:MatriX.134 --port=8099
```
+17
View File
@@ -0,0 +1,17 @@
#!/bin/bash
case $(uname -m) in
i386) architecture="386" ;;
i686) architecture="386" ;;
x86_64) architecture="amd64" ;;
aarch64) architecture="arm64" ;;
armv7|armv7l) architecture="arm7" ;;
armv6|armv6l) architecture="arm5" ;;
# armv5|armv5l) architecture="arm5" ;;
*) echo "Unsupported Arch. Can't continue."; exit 1 ;;
esac
binName="TorrServer-linux-${architecture}"
mkdir -p /app
cp /src/dist/$binName /app/TorrServer
+4
View File
@@ -0,0 +1,4 @@
#!/bin/bash
cp -r ../../dist ./
docker buildx build --platform "linux/386,linux/amd64,linux/arm64,linux/arm/v7,linux/arm/v6" --tag yourok/torrlite:$* --push .
rm -rf ./dist
+49
View File
@@ -0,0 +1,49 @@
#!/bin/sh
case $(uname -m) in
i386) architecture="386" ;;
i686) architecture="386" ;;
x86_64) architecture="amd64" ;;
aarch64) architecture="arm64" ;;
armv7|armv7l) architecture="arm7" ;;
armv6|armv6l) architecture="arm5" ;;
# armv5|armv5l) architecture="arm5" ;;
*) echo "Unsupported Arch. Can't continue."; exit 1 ;;
esac
binName="TorrServer-linux-${architecture}"
mkdir -p /opt/torrserver
cd /opt/torrserver
rm -f ${binName}*
wget -O $binName "https://github.com/YouROK/TorrServer/releases/latest/download/$binName"
chmod +x $binName
FLAGS=""
#sets start flags
[ ! -z "$TS_PORT" ] && echo "TS_PORT: $TS_PORT" && FLAGS="${FLAGS} --port ${TS_PORT}"
[ ! -z "$TS_PATH" ] && echo "TS_PATH: $TS_PATH" && FLAGS="${FLAGS} --path ${TS_PATH}"
[ ! -z "$TS_LOGPATHDIR" ] && echo "TS_LOGPATHDIR: $TS_LOGPATHDIR" && FLAGS="${FLAGS}"
[ ! -z "$TS_LOGFILE" ] && echo "TS_LOGFILE: $TS_LOGPATHDIR/$TS_LOGFILE" && FLAGS="${FLAGS} --logpath $TS_LOGPATHDIR/${TS_LOGFILE}"
[ ! -z "$TS_WEBLOGFILE" ] && echo "TS_WEBLOGFILE: $TS_LOGPATHDIR/$TS_WEBLOGFILE" && FLAGS="${FLAGS} --weblogpath $TS_LOGPATHDIR/${TS_WEBLOGFILE}"
[ ! -z "$TS_RDB" ] | [ "$TS_RDB" = "true" ] && echo "TS_RDB: $TS_RDB" && FLAGS="${FLAGS} --rdb"
[ ! -z "$TS_HTTPAUTH" ] && echo "TS_HTTPAUTH: $TS_HTTPAUTH" && FLAGS="${FLAGS} --httpauth"
[ ! -z "$TS_DONTKILL" ] && echo "TS_DONTKILL: $TS_DONTKILL" && FLAGS="${FLAGS} --dontkill"
[ ! -z "$TS_TORRENTSDIR" ] && echo "TS_TORRENTSDIR: $TS_TORRENTSDIR" && FLAGS="${FLAGS} --torrentsdir ${TS_TORRENTSDIR}"
[ ! -z "$TS_TORRENTADDR" ] && echo "TS_TORRENTADDR: $TS_TORRENTADDR" && FLAGS="${FLAGS} --torrentaddr ${TS_TORRENTADDR}"
[ ! -z "$TS_PUBIPV4" ] && echo "TS_PUBIPV4: $TS_PUBIPV4" && FLAGS="${FLAGS} --pubipv4 ${TS_PUBIPV4}"
[ ! -z "$TS_PUBIPV6" ] && echo "TS_PUBIPV6: $TS_PUBIPV6" && FLAGS="${FLAGS} --pubipv6 ${TS_PUBIPV6}"
[ ! -z "$TS_SEARCHWA" ]&& echo "TS_SEARCHWA: $TS_SEARCHWA" && FLAGS="${FLAGS} --searchwa"
#make directories
[ ! -z "$TS_PATH" ] && [ ! -d "$TS_PATH" ] && mkdir -p $TS_PATH
[ ! -z "$TS_LOGPATHDIR" ] && [ ! -d "$TS_LOGPATHDIR" ] && mkdir -p $TS_LOGPATHDIR
[ ! -z "$TS_TORRENTSDIR" ] && [ ! -d "$TS_TORRENTSDIR" ] && mkdir $TS_TORRENTSDIR
echo "Running with: ${FLAGS}"
export GODEBUG=madvdontneed=1
/opt/torrserver/${binName} ${FLAGS}