Compare commits

..

35 Commits
19 ... 103

Author SHA1 Message Date
sparklyballs
ee4414a561 Merge pull request #29 from linuxserver/use_buildstage
bump qbittorrent version, use buildstage
2018-09-25 20:36:44 +01:00
sparklyballs
31d935a77e bump qbittorrent version, use buildstage 2018-09-25 11:02:55 +01:00
sparklyballs
31b80b2e75 Merge pull request #26 from linuxserver/bump_versions
bump versions, rebase to alpine 3.8
2018-08-14 19:01:11 +01:00
sparklyballs
1fad4d555e Update README.md 2018-08-14 16:19:21 +01:00
sparklyballs
76792ce300 bump versions, rebase to alpine 3.8 2018-08-14 16:17:49 +01:00
sparklyballs
3752226599 bump versions, rebase to alpine 3.8 2018-08-14 16:16:25 +01:00
sparklyballs
c11d7c7dc2 Update README.md 2018-06-08 15:59:41 +01:00
sparklyballs
489adb5d50 Merge pull request #21 from linuxserver/Bump-version-to-4.1.1
Bump version to 4.1.1
2018-06-08 15:55:14 +01:00
sparklyballs
ab47931546 remove patch 2018-06-02 11:31:44 +01:00
chbmb
64d330d04c Update Dockerfile 2018-06-02 11:06:37 +01:00
sparklyballs
06d53f02f4 Merge pull request #20 from linuxserver/bump_versions
bump libtorrent version
2018-04-26 13:27:47 +01:00
sparklyballs
87b783fd8c bump libtorrent version 2018-04-26 09:39:28 +01:00
sparklyballs
f09f155753 update changelog 2018-03-02 19:49:56 +00:00
sparklyballs
1c7351b7c0 Merge pull request #19 from pl77/4.0.4-Update
Update to qbittorrent 4.0.4 and libtorrent 1.1.6
2018-03-02 19:49:06 +00:00
pl77
2359b3b2f2 Update to qbittorrent 4.0.4 and libtorrent 1.1.6
No change necessary to patch file.
2018-03-02 12:48:44 -05:00
sparklyballs
f6d230b542 Merge pull request #17 from linuxserver/deprecate_cpu_core
deprecate cpu_core routine lack of scaling
2018-01-03 11:25:14 +00:00
sparklyballs
bf7c1a5fd4 deprecate cpu_core routine lack of scaling 2018-01-02 21:39:50 +00:00
sparklyballs
18eadcefdb Merge pull request #16 from Owkkuri/version_update_4_0_3
Version update 4 0 3
2017-12-19 11:50:58 +00:00
Ross van Wyk
07e75f2949 update docs
Add version change to Versions list
2017-12-19 01:11:21 +02:00
Ross van Wyk
3c3ae9cab1 version update
Update qbittorrent version to 4.0.3, was 4.0.2
2017-12-19 01:10:40 +02:00
sparklyballs
c5579f753b Merge pull request #14 from linuxserver/3.7
bump to alpine 3.7 and fix continuation lines
2017-12-17 00:12:39 +00:00
sparklyballs
9c178a4fdf bump to alpine 3.7 and fix continuation lines 2017-12-09 13:10:44 +00:00
j0nnymoe
6b61bdc9d9 Merge pull request #13 from linuxserver/4.0.2
update to v4.0.2
2017-12-01 20:52:24 +00:00
sparklyballs
4929d34e2f update to v4.0.2 2017-12-01 19:36:51 +00:00
saarg
9c8ffeb5ba Merge pull request #12 from linuxserver/v4_update
update to v4 and latest rasterbar, use cpu core routine
2017-11-29 12:23:04 +01:00
sparklyballs
bf017d1624 update to v4 and latest rasterbar, use cpu core routine 2017-11-27 17:02:58 +00:00
j0nnymoe
35b6e2315e Merge pull request #10 from linuxserver/bump_3.3.16
Bump 3.3.16
2017-09-16 13:25:39 +01:00
sparklyballs
1c4d1c4d6a improve blurb again on WEBUI_PORT variable 2017-09-16 08:24:32 +01:00
sparklyballs
ed55418fc2 spacing 2017-09-16 08:21:00 +01:00
sparklyballs
f8219eae32 Update README.md 2017-09-16 08:19:25 +01:00
sparklyballs
917f7421e9 Update README.md 2017-09-16 08:18:05 +01:00
sparklyballs
55f0728496 refine WEBUI_PORT blurb 2017-09-16 08:17:14 +01:00
sparklyballs
fef8110e7c bump version and add WEBUI_PORT variable to allow changing of the webui port 2017-09-16 08:07:40 +01:00
sparklyballs
7ae345b4db Merge pull request #7 from linuxserver/release_and_add_unrar
add unrar package and swap readmes for release
2017-08-03 09:15:14 +01:00
sparklyballs
68c13b9cf7 add unrar package and swap readmes for release 2017-08-01 23:10:35 +01:00
6 changed files with 163 additions and 156 deletions

View File

@@ -1,25 +1,12 @@
FROM lsiobase/alpine:3.6
MAINTAINER sparklyballs
# set version label
ARG BUILD_DATE
ARG VERSION
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
FROM lsiobase/alpine:3.8 as buildstage
############## build stage ##############
# package versions
ARG QBITTORRENT_VER="3.3.14"
ARG RASTERBAR_VER="RC_1_0"
ARG QBITTORRENT_VER="4.1.3"
ARG RASTERBAR_VER="1.1.9"
# environment settings
ENV HOME="/config" \
XDG_CONFIG_HOME="/config" \
XDG_DATA_HOME="/config"
# copy patches
COPY patches/ /tmp/patches
# install build packages
RUN \
echo "**** install build packages ****" && \
apk add --no-cache --virtual=build-dependencies \
autoconf \
automake \
@@ -32,33 +19,29 @@ RUN \
git \
libtool \
make \
qt5-qttools-dev && \
qt5-qttools-dev
# install runtime packages
apk add --no-cache \
boost-system \
boost-thread \
ca-certificates \
geoip \
qt5-qtbase && \
# compile libtorrent rasterbar
RUN \
echo "**** compile libtorrent rasterbar ****" && \
git clone https://github.com/arvidn/libtorrent.git /tmp/libtorrent && \
cd /tmp/libtorrent && \
git checkout ${RASTERBAR_VER} && \
RASTERBAR_REALVER=${RASTERBAR_VER//./_} && \
git checkout "libtorrent-${RASTERBAR_REALVER}" && \
./autotool.sh && \
./configure \
--disable-debug \
--enable-encryption \
--prefix=/usr \
--with-libgeoip=system && \
--prefix=/usr && \
make && \
make install && \
make DESTDIR=/tmp/rasterbar-build install && \
strip --strip-unneeded \
/usr/lib/libtorrent-rasterbar.so* \
/usr/lib/libtorrent-rasterbar.a* && \
/tmp/rasterbar-build/usr/lib/libtorrent-rasterbar.so* \
/tmp/rasterbar-build/usr/lib/libtorrent-rasterbar.a* && \
echo "**** copy rasterbar build to /usr for qbittorrent dependency ****" && \
cp -pr /tmp/rasterbar-build/usr/* /usr/
# compile qbittorrent
RUN \
echo "**** compile qbittorrent ****" && \
mkdir -p \
/tmp/qbittorrent-src && \
curl -o \
@@ -67,22 +50,41 @@ RUN \
tar xf \
/tmp/bittorrent.tar.gz -C \
/tmp/qbittorrent-src --strip-components=1 && \
cd /tmp/qbittorrent-src/src/app && \
patch -i /tmp/patches/main.patch && \
cd /tmp/qbittorrent-src && \
./configure \
--disable-gui \
--prefix=/usr && \
make && \
make install && \
make INSTALL_ROOT=/tmp/qbittorrent-build install
# cleanup
apk del --purge \
build-dependencies && \
rm -rf \
/tmp/*
############## runtime stage ##############
# add local files
FROM lsiobase/alpine:3.8
# set version label
ARG BUILD_DATE
ARG VERSION
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
LABEL maintainer="sparklyballs"
# environment settings
ENV HOME="/config" \
XDG_CONFIG_HOME="/config" \
XDG_DATA_HOME="/config"
RUN \
echo "**** install runtime packages ****" && \
apk add --no-cache \
boost-system \
boost-thread \
ca-certificates \
geoip \
qt5-qtbase \
unrar
# copy files from build stage and local files
COPY --from=buildstage /tmp/qbittorrent-build/usr/ /usr/
COPY --from=buildstage /tmp/rasterbar-build/usr/ /usr/
COPY root/ /
# ports and volumes

117
README.md
View File

@@ -2,14 +2,123 @@
[forumurl]: https://forum.linuxserver.io
[ircurl]: https://www.linuxserver.io/irc/
[podcasturl]: https://www.linuxserver.io/podcast/
[appurl]: https://www.qbittorrent.org
[hub]: https://hub.docker.com/r/linuxserver/qbittorrent/
[![linuxserver.io](https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/linuxserver_medium.png)][linuxserverurl]
## This is a Container in active development by the [LinuxServer.io][linuxserverurl] team and is not recommended for use by the general public.
If you want to comment\contribute on this container , are looking for support on any of our other work , or are curious about us in general, check out the following.
The [LinuxServer.io][linuxserverurl] team brings you another container release featuring easy user mapping and community support. Find us for support at:
* [forum.linuxserver.io][forumurl]
* [IRC][ircurl] on freenode at `#linuxserver.io`
* [Podcast][podcasturl] covers everything to do with getting the most from your Linux Server plus a focus on all things Docker and containerisation!
# linuxserver/qbittorrent
[![](https://images.microbadger.com/badges/version/linuxserver/qbittorrent.svg)](https://microbadger.com/images/linuxserver/qbittorrent "Get your own version badge on microbadger.com")[![](https://images.microbadger.com/badges/image/linuxserver/qbittorrent.svg)](https://microbadger.com/images/linuxserver/qbittorrent "Get your own image badge on microbadger.com")[![Docker Pulls](https://img.shields.io/docker/pulls/linuxserver/qbittorrent.svg)][hub][![Docker Stars](https://img.shields.io/docker/stars/linuxserver/qbittorrent.svg)][hub][![Build Status](https://ci.linuxserver.io/buildStatus/icon?job=Docker-Builders/x86-64/x86-64-qbittorrent)](https://ci.linuxserver.io/job/Docker-Builders/job/x86-64/job/x86-64-qbittorrent/)
The [qBittorrent][appurl] project aims to provide an open-source software alternative to µTorrent.
qBittorrent is based on the Qt toolkit and libtorrent-rasterbar library.
[![qbittorrent](https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/qbittorrent-icon.png)][appurl]
## Usage
```
docker create \
--name=qbittorrent \
-v <path to config>:/config \
-v <path to downloads>:/downloads \
-e PGID=<gid> -e PUID=<uid> \
-e UMASK_SET=<022> \
-e WEBUI_PORT=<8080> \
-e TZ=<timezone> \
-p 6881:6881 \
-p 6881:6881/udp \
-p 8080:8080 \
linuxserver/qbittorrent
```
## Parameters
`The parameters are split into two halves, separated by a colon, the left hand side representing the host and the right the container side.
For example with a port -p external:internal - what this shows is the port mapping from internal to external of the container.
So -p 8080:80 would expose port 80 from inside the container to be accessible from the host's IP on port 8080
http://192.168.x.x:8080 would show you what's running INSIDE the container on port 80.`
* `-p 6881` - the port(s)
* `-p 6881/udp` - the port(s)
* `-p 8080` - webui port
* `-v /config` - where qbittorrent should store its config files
* `-v /downloads` - path to downloads
* `-e PGID` for GroupID - see below for explanation
* `-e PUID` for UserID - see below for explanation
* `-e UMASK_SET` for umask setting of qbittorrent, *optional* , default if left unset is 022.
* `-e WEBUI_PORT` for changing the port of the webui, see below for explanation
* `-e TZ` for timezone information, eg Europe/London
It is based on alpine linux with s6 overlay, for shell access whilst the container is running do `docker exec -it qbittorrent /bin/bash`.
## WEBUI_PORT variable
Due to issues with CSRF and port mapping, should you require to alter the port for the webui you need to change both sides of the `-p 8080` switch **AND** set the `WEBUI_PORT` variable to the new port.
For example, to set the port to 8090 you need to set `-p 8090:8090` and `-e WEBUI_PORT=8090`
This should alleviate the "white screen" issue.
If you have no webui , check the file /config/qBittorrent/qBittorrent.conf
edit or add the following lines
```
WebUI\Address=*
WebUI\ServerDomains=*
```
### User / Group Identifiers
Sometimes when using data volumes (`-v` flags) permissions issues can arise between the host OS and the container. We avoid this issue by allowing you to specify the user `PUID` and group `PGID`. Ensure the data volume directory on the host is owned by the same user you specify and it will "just work" ™.
In this instance `PUID=1001` and `PGID=1001`. To find yours use `id user` as below:
```
$ id <dockeruser>
uid=1001(dockeruser) gid=1001(dockergroup) groups=1001(dockergroup)
```
## Setting up the application
The webui is at `<your-ip>:8080` and the default username/password is `admin/adminadmin`.
Change username/password via the webui in the webui section of settings.
## Info
Shell access whilst the container is running: `docker exec -it qbittorrent /bin/bash`
To monitor the logs of the container in realtime: `docker logs -f qbittorrent`
* container version number
`docker inspect -f '{{ index .Config.Labels "build_version" }}' qbittorrent`
* image version number
`docker inspect -f '{{ index .Config.Labels "build_version" }}' linuxserver/qbittorrent`
## Versions
+ **25.09.18:** Use buildstage type build, bump qbitorrent to 4.1.3.
+ **14.08.18:** Rebase to alpine 3.8, bump libtorrent to 1.1.9 and qbitorrent to 4.1.2.
+ **08.06.18:** Bump qbitorrent to 4.1.1.
+ **26.04.18:** Bump libtorrent to 1.1.7.
+ **02.03.18:** Bump qbitorrent to 4.0.4 and libtorrent to 1.1.6.
+ **02.01.18:** Deprecate cpu_core routine lack of scaling.
+ **19.12.17:** Update to v4.0.3.
+ **09.12.17:** Rebase to alpine 3.7.
+ **01.12.17:** Update to v4.0.2.
+ **27.11.17:** Update to v4 and use cpu_core routine to speed up builds.
+ **16.09.17:** Bump to 3.3.16, Add WEBUI_PORT variable and notes to README to allow changing port of webui.
+ **01.08.17:** Initial Release.

View File

@@ -1,93 +0,0 @@
[linuxserverurl]: https://linuxserver.io
[forumurl]: https://forum.linuxserver.io
[ircurl]: https://www.linuxserver.io/irc/
[podcasturl]: https://www.linuxserver.io/podcast/
[appurl]: https://www.qbittorrent.org
[hub]: https://hub.docker.com/r/linuxserver/qbittorrent/
[![linuxserver.io](https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/linuxserver_medium.png)][linuxserverurl]
The [LinuxServer.io][linuxserverurl] team brings you another container release featuring easy user mapping and community support. Find us for support at:
* [forum.linuxserver.io][forumurl]
* [IRC][ircurl] on freenode at `#linuxserver.io`
* [Podcast][podcasturl] covers everything to do with getting the most from your Linux Server plus a focus on all things Docker and containerisation!
# linuxserver/qbittorrent
[![](https://images.microbadger.com/badges/version/linuxserver/qbittorrent.svg)](https://microbadger.com/images/linuxserver/qbittorrent "Get your own version badge on microbadger.com")[![](https://images.microbadger.com/badges/image/linuxserver/qbittorrent.svg)](https://microbadger.com/images/linuxserver/qbittorrent "Get your own image badge on microbadger.com")[![Docker Pulls](https://img.shields.io/docker/pulls/linuxserver/qbittorrent.svg)][hub][![Docker Stars](https://img.shields.io/docker/stars/linuxserver/qbittorrent.svg)][hub][![Build Status](https://ci.linuxserver.io/buildStatus/icon?job=Docker-Builders/x86-64/x86-64-qbittorrent)](https://ci.linuxserver.io/job/Docker-Builders/job/x86-64/job/x86-64-qbittorrent/)
The [qBittorrent][appurl] project aims to provide an open-source software alternative to µTorrent.
qBittorrent is based on the Qt toolkit and libtorrent-rasterbar library.
[![qbittorrent](https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/qbittorrent-icon.png)][appurl]
## Usage
```
docker create \
--name=qbittorrent \
-v <path to config>:/config \
-v <path to downloads>:/downloads \
-e PGID=<gid> -e PUID=<uid> \
-e UMASK_SET=<022> \
-e TZ=<timezone> \
-p 6881:6881 \
-p 6881:6881/udp \
-p 8080:8080 \
linuxserver/qbittorrent
```
## Parameters
`The parameters are split into two halves, separated by a colon, the left hand side representing the host and the right the container side.
For example with a port -p external:internal - what this shows is the port mapping from internal to external of the container.
So -p 8080:80 would expose port 80 from inside the container to be accessible from the host's IP on port 8080
http://192.168.x.x:8080 would show you what's running INSIDE the container on port 80.`
* `-p 6881` - the port(s)
* `-p 6881/udp` - the port(s)
* `-p 8080` - the port(s)
* `-v /config` - where qbittorrent should store its config files
* `-v /downloads` - path to downloads
* `-e PGID` for GroupID - see below for explanation
* `-e PUID` for UserID - see below for explanation
* `-e UMASK_SET` for umask setting of qbittorrent, *optional* , default if left unset is 022.
* `-e TZ` for timezone information, eg Europe/London
It is based on alpine linux with s6 overlay, for shell access whilst the container is running do `docker exec -it qbittorrent /bin/bash`.
### User / Group Identifiers
Sometimes when using data volumes (`-v` flags) permissions issues can arise between the host OS and the container. We avoid this issue by allowing you to specify the user `PUID` and group `PGID`. Ensure the data volume directory on the host is owned by the same user you specify and it will "just work" ™.
In this instance `PUID=1001` and `PGID=1001`. To find yours use `id user` as below:
```
$ id <dockeruser>
uid=1001(dockeruser) gid=1001(dockergroup) groups=1001(dockergroup)
```
## Setting up the application
The webui is at `<your-ip>:8080` and the default username/password is `admin/adminadmin`.
Change username/password via the webui in the webui section of settings.
## Info
Shell access whilst the container is running: `docker exec -it qbittorrent /bin/bash`
To monitor the logs of the container in realtime: `docker logs -f qbittorrent`
* container version number
`docker inspect -f '{{ index .Config.Labels "build_version" }}' qbittorrent`
* image version number
`docker inspect -f '{{ index .Config.Labels "build_version" }}' linuxserver/qbittorrent`
## Versions
+ **13.07.17:** Initial Release.

View File

@@ -1,14 +0,0 @@
--- src/app/main.cpp
+++ src/app/main.cpp
@@ -59,8 +59,9 @@
#ifdef Q_OS_UNIX
#include <signal.h>
-#include <execinfo.h>
-#include "stacktrace.h"
+static inline void print_stacktrace(FILE *out = stderr, unsigned int max_frames = 63) {
+ fprintf(out, "stack trace:\n N/A (%d)", max_frames);
+}
#endif // Q_OS_UNIX
#ifdef STACKTRACE_WIN

View File

@@ -11,3 +11,5 @@ Connection\PortRangeMin=6881
Downloads\SavePath=/downloads/
Downloads\ScanDirsV2=@Variant(\0\0\0\x1c\0\0\0\0)
Downloads\TempPath=/downloads/incomplete/
WebUI\Address=*
WebUI\ServerDomains=*

View File

@@ -1,8 +1,9 @@
#!/usr/bin/with-contenv bash
UMASK_SET=${UMASK_SET:-022}
WEBUI_PORT=${WEBUI_PORT:-8080}
umask "$UMASK_SET"
exec \
s6-setuidgid abc /usr/bin/qbittorrent-nox
s6-setuidgid abc /usr/bin/qbittorrent-nox --webui-port="${WEBUI_PORT}"