Compare commits

..

27 Commits

Author SHA1 Message Date
LinuxServer-CI
40f3ee4dc5 Bot Updating Package Versions 2021-04-22 17:42:21 +00:00
LinuxServer-CI
1139d54df5 Bot Updating Package Versions 2021-04-21 13:01:06 +01:00
LinuxServer-CI
2cc991bb65 Bot Updating Package Versions 2021-04-20 09:03:33 +00:00
LinuxServer-CI
798885d97f Bot Updating Package Versions 2021-04-19 07:57:56 +00:00
LinuxServer-CI
b5c873b4d5 Bot Updating Package Versions 2021-04-18 08:59:15 +01:00
LinuxServer-CI
7bf48a1076 Bot Updating Templated Files 2021-04-18 07:51:57 +00:00
LinuxServer-CI
89286646ac Bot Updating Package Versions 2021-04-17 10:02:13 +00:00
LinuxServer-CI
635480ff08 Bot Updating Package Versions 2021-04-16 15:58:22 -04:00
LinuxServer-CI
fe5562dc29 Bot Updating Templated Files 2021-04-16 20:50:05 +01:00
LinuxServer-CI
57b2eed84d Bot Updating Templated Files 2021-04-16 19:48:40 +00:00
LinuxServer-CI
6461cd68d5 Bot Updating Package Versions 2021-04-15 05:06:39 -04:00
LinuxServer-CI
e81178409d Bot Updating Package Versions 2021-04-14 08:00:43 +00:00
LinuxServer-CI
f5c368b841 Bot Updating Package Versions 2021-04-13 03:59:29 -04:00
LinuxServer-CI
75a89b8819 Bot Updating Package Versions 2021-04-10 13:38:16 -04:00
LinuxServer-CI
828a0feb6f Bot Updating Package Versions 2021-04-09 17:23:29 +00:00
LinuxServer-CI
58c45bb711 Bot Updating Package Versions 2021-04-08 19:12:44 +00:00
LinuxServer-CI
4c416920f0 Bot Updating Package Versions 2021-04-07 19:15:19 +00:00
LinuxServer-CI
6fbb1074a0 Bot Updating Package Versions 2021-04-06 06:05:27 +00:00
LinuxServer-CI
f708e64978 Bot Updating Package Versions 2021-04-03 12:57:41 +01:00
LinuxServer-CI
be174487eb Bot Updating Package Versions 2021-04-02 07:03:11 -04:00
LinuxServer-CI
f6ea55c7df Bot Updating Package Versions 2021-04-01 12:54:16 +01:00
LinuxServer-CI
4520a328e6 Bot Updating Package Versions 2021-03-31 09:16:50 -04:00
LinuxServer-CI
2cf536b325 Bot Updating Package Versions 2021-03-30 12:56:04 +01:00
LinuxServer-CI
f360c91c5d Bot Updating Package Versions 2021-03-29 12:54:48 +01:00
LinuxServer-CI
de1d81173c Bot Updating Package Versions 2021-03-27 17:38:12 +00:00
LinuxServer-CI
2a0ad610b5 Bot Updating Package Versions 2021-03-26 17:39:06 +00:00
LinuxServer-CI
6a711856dd Bot Updating Package Versions 2021-03-25 13:11:11 -04:00
6 changed files with 143 additions and 83 deletions

View File

@@ -24,7 +24,7 @@
## Readme ## Readme
If you would like to change our readme, please __**do not**__ directly edit the readme, as it is auto-generated on each commit. If you would like to change our readme, please __**do not**__ directly edit the readme, as it is auto-generated on each commit.
Instead edit the [readme-vars.yml](https://github.com/linuxserver/docker-qbittorrent/edit/master/readme-vars.yml). Instead edit the [readme-vars.yml](https://github.com/linuxserver/docker-qbittorrent/edit/unstable/readme-vars.yml).
These variables are used in a template for our [Jenkins Builder](https://github.com/linuxserver/docker-jenkins-builder) as part of an ansible play. These variables are used in a template for our [Jenkins Builder](https://github.com/linuxserver/docker-jenkins-builder) as part of an ansible play.
Most of these variables are also carried over to [docs.linuxserver.io](https://docs.linuxserver.io/images/docker-qbittorrent) Most of these variables are also carried over to [docs.linuxserver.io](https://docs.linuxserver.io/images/docker-qbittorrent)
@@ -96,7 +96,7 @@ If you are proposing additional packages to be added, ensure that you added the
### Testing your changes ### Testing your changes
``` ```bash
git clone https://github.com/linuxserver/docker-qbittorrent.git git clone https://github.com/linuxserver/docker-qbittorrent.git
cd docker-qbittorrent cd docker-qbittorrent
docker build \ docker build \
@@ -106,15 +106,16 @@ docker build \
``` ```
The ARM variants can be built on x86_64 hardware using `multiarch/qemu-user-static` The ARM variants can be built on x86_64 hardware using `multiarch/qemu-user-static`
```
```bash
docker run --rm --privileged multiarch/qemu-user-static:register --reset docker run --rm --privileged multiarch/qemu-user-static:register --reset
``` ```
Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64`. Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64`.
## Update the chagelog ## Update the changelog
If you are modifying the Dockerfiles or any of the startup scripts in [root](https://github.com/linuxserver/docker-qbittorrent/tree/master/root), add an entry to the changelog If you are modifying the Dockerfiles or any of the startup scripts in [root](https://github.com/linuxserver/docker-qbittorrent/tree/unstable/root), add an entry to the changelog
```yml ```yml
changelogs: changelogs:

View File

@@ -21,7 +21,7 @@
------------------------------ ------------------------------
- [ ] I have read the [contributing](https://github.com/linuxserver/docker-qbittorrent/blob/master/.github/CONTRIBUTING.md) guideline and understand that I have made the correct modifications - [ ] I have read the [contributing](https://github.com/linuxserver/docker-qbittorrent/blob/unstable/.github/CONTRIBUTING.md) guideline and understand that I have made the correct modifications
------------------------------ ------------------------------

View File

@@ -8,6 +8,6 @@ jobs:
steps: steps:
- uses: actions/first-interaction@v1 - uses: actions/first-interaction@v1
with: with:
issue-message: 'Thanks for opening your first issue here! Be sure to follow the [bug](https://github.com/linuxserver/docker-qbittorrent/blob/master/.github/ISSUE_TEMPLATE/issue.bug.md) or [feature](https://github.com/linuxserver/docker-qbittorrent/blob/master/.github/ISSUE_TEMPLATE/issue.feature.md) issue templates!' issue-message: 'Thanks for opening your first issue here! Be sure to follow the [bug](https://github.com/linuxserver/docker-qbittorrent/blob/unstable/.github/ISSUE_TEMPLATE/issue.bug.md) or [feature](https://github.com/linuxserver/docker-qbittorrent/blob/unstable/.github/ISSUE_TEMPLATE/issue.feature.md) issue templates!'
pr-message: 'Thanks for opening this pull request! Be sure to follow the [pull request template](https://github.com/linuxserver/docker-qbittorrent/blob/master/.github/PULL_REQUEST_TEMPLATE.md)!' pr-message: 'Thanks for opening this pull request! Be sure to follow the [pull request template](https://github.com/linuxserver/docker-qbittorrent/blob/unstable/.github/PULL_REQUEST_TEMPLATE.md)!'
repo-token: ${{ secrets.GITHUB_TOKEN }} repo-token: ${{ secrets.GITHUB_TOKEN }}

88
Jenkinsfile vendored
View File

@@ -55,7 +55,7 @@ pipeline {
env.CODE_URL = 'https://github.com/' + env.LS_USER + '/' + env.LS_REPO + '/commit/' + env.GIT_COMMIT env.CODE_URL = 'https://github.com/' + env.LS_USER + '/' + env.LS_REPO + '/commit/' + env.GIT_COMMIT
env.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.DOCKERHUB_IMAGE + '/tags/' env.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.DOCKERHUB_IMAGE + '/tags/'
env.PULL_REQUEST = env.CHANGE_ID env.PULL_REQUEST = env.CHANGE_ID
env.TEMPLATED_FILES = 'Jenkinsfile README.md LICENSE ./.github/CONTRIBUTING.md ./.github/FUNDING.yml ./.github/ISSUE_TEMPLATE/config.yml ./.github/ISSUE_TEMPLATE/issue.bug.md ./.github/ISSUE_TEMPLATE/issue.feature.md ./.github/PULL_REQUEST_TEMPLATE.md ./.github/workflows/greetings.yml ./.github/workflows/stale.yml ./.github/workflows/package_trigger.yml ./.github/workflows/package_trigger_scheduler.yml ./.github/workflows/external_trigger_scheduler.yml' env.TEMPLATED_FILES = 'Jenkinsfile README.md LICENSE ./.github/CONTRIBUTING.md ./.github/FUNDING.yml ./.github/ISSUE_TEMPLATE/config.yml ./.github/ISSUE_TEMPLATE/issue.bug.md ./.github/ISSUE_TEMPLATE/issue.feature.md ./.github/PULL_REQUEST_TEMPLATE.md ./.github/workflows/external_trigger_scheduler.yml ./.github/workflows/greetings.yml ./.github/workflows/package_trigger_scheduler.yml ./.github/workflows/stale.yml ./.github/workflows/package_trigger.yml'
} }
script{ script{
env.LS_RELEASE_NUMBER = sh( env.LS_RELEASE_NUMBER = sh(
@@ -307,22 +307,24 @@ pipeline {
git commit -m 'Bot Updating Documentation' git commit -m 'Bot Updating Documentation'
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/docker-documentation.git --all git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/docker-documentation.git --all
fi fi
mkdir -p ${TEMPDIR}/unraid mkdir -p ${TEMPDIR}/unraid
git clone https://github.com/linuxserver/docker-templates.git ${TEMPDIR}/unraid/docker-templates git clone https://github.com/linuxserver/docker-templates.git ${TEMPDIR}/unraid/docker-templates
git clone https://github.com/linuxserver/templates.git ${TEMPDIR}/unraid/templates git clone https://github.com/linuxserver/templates.git ${TEMPDIR}/unraid/templates
if [[ -f ${TEMPDIR}/unraid/docker-templates/linuxserver.io/img/${CONTAINER_NAME}-icon.png ]]; then if [[ -f ${TEMPDIR}/unraid/docker-templates/linuxserver.io/img/${CONTAINER_NAME}-logo.png ]]; then
sed -i "s|master/linuxserver.io/img/linuxserver-ls-logo.png|master/linuxserver.io/img/${CONTAINER_NAME}-icon.png|" ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml sed -i "s|master/linuxserver.io/img/linuxserver-ls-logo.png|master/linuxserver.io/img/${CONTAINER_NAME}-logo.png|" ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml
fi fi
if [[ ("${BRANCH_NAME}" == "master") || ("${BRANCH_NAME}" == "main") ]] && [[ (! -f ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml) || ("$(md5sum ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml | awk '{ print $1 }')") ]]; then if [[ ("${BRANCH_NAME}" == "master") || ("${BRANCH_NAME}" == "main") ]] && [[ (! -f ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml) || ("$(md5sum ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml | awk '{ print $1 }')") ]]; then
cd ${TEMPDIR}/unraid/templates/
if grep -wq "${CONTAINER_NAME}" ${TEMPDIR}/unraid/templates/unraid/ignore.list; then if grep -wq "${CONTAINER_NAME}" ${TEMPDIR}/unraid/templates/unraid/ignore.list; then
echo "Image is on the ignore list, skipping Unraid template upload" echo "Image is on the ignore list, removing Unraid template"
git rm unraid/${CONTAINER_NAME}.xml || :
git commit -m 'Bot Removing Deprecated Unraid Template' || :
else else
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml ${TEMPDIR}/unraid/templates/unraid/ cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml ${TEMPDIR}/unraid/templates/unraid/
cd ${TEMPDIR}/unraid/templates/
git add unraid/${CONTAINER_NAME}.xml git add unraid/${CONTAINER_NAME}.xml
git commit -m 'Bot Updating Unraid Template' git commit -m 'Bot Updating Unraid Template'
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/templates.git --all
fi fi
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/templates.git --all
fi fi
rm -Rf ${TEMPDIR}''' rm -Rf ${TEMPDIR}'''
script{ script{
@@ -379,8 +381,21 @@ pipeline {
} }
steps { steps {
echo "Running on node: ${NODE_NAME}" echo "Running on node: ${NODE_NAME}"
sh "docker build --no-cache --pull -t ${IMAGE}:${META_TAG} \ sh "docker build \
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ." --label \"org.opencontainers.image.created=${GITHUB_DATE}\" \
--label \"org.opencontainers.image.authors=linuxserver.io\" \
--label \"org.opencontainers.image.url=https://github.com/linuxserver/docker-qbittorrent/packages\" \
--label \"org.opencontainers.image.documentation=https://docs.linuxserver.io/images/docker-qbittorrent\" \
--label \"org.opencontainers.image.source=https://github.com/linuxserver/docker-qbittorrent\" \
--label \"org.opencontainers.image.version=${EXT_RELEASE_CLEAN}-ls${LS_TAG_NUMBER}\" \
--label \"org.opencontainers.image.revision=${COMMIT_SHA}\" \
--label \"org.opencontainers.image.vendor=linuxserver.io\" \
--label \"org.opencontainers.image.licenses=GPL-3.0-only\" \
--label \"org.opencontainers.image.ref.name=${COMMIT_SHA}\" \
--label \"org.opencontainers.image.title=Qbittorrent\" \
--label \"org.opencontainers.image.description=The [Qbittorrent](https://www.qbittorrent.org/) project aims to provide an open-source software alternative to µTorrent. qBittorrent is based on the Qt toolkit and libtorrent-rasterbar library.\" \
--no-cache --pull -t ${IMAGE}:${META_TAG} \
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
} }
} }
// Build MultiArch Docker containers for push to LS Repo // Build MultiArch Docker containers for push to LS Repo
@@ -393,8 +408,21 @@ pipeline {
stage('Build X86') { stage('Build X86') {
steps { steps {
echo "Running on node: ${NODE_NAME}" echo "Running on node: ${NODE_NAME}"
sh "docker build --no-cache --pull -t ${IMAGE}:amd64-${META_TAG} \ sh "docker build \
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ." --label \"org.opencontainers.image.created=${GITHUB_DATE}\" \
--label \"org.opencontainers.image.authors=linuxserver.io\" \
--label \"org.opencontainers.image.url=https://github.com/linuxserver/docker-qbittorrent/packages\" \
--label \"org.opencontainers.image.documentation=https://docs.linuxserver.io/images/docker-qbittorrent\" \
--label \"org.opencontainers.image.source=https://github.com/linuxserver/docker-qbittorrent\" \
--label \"org.opencontainers.image.version=${EXT_RELEASE_CLEAN}-ls${LS_TAG_NUMBER}\" \
--label \"org.opencontainers.image.revision=${COMMIT_SHA}\" \
--label \"org.opencontainers.image.vendor=linuxserver.io\" \
--label \"org.opencontainers.image.licenses=GPL-3.0-only\" \
--label \"org.opencontainers.image.ref.name=${COMMIT_SHA}\" \
--label \"org.opencontainers.image.title=Qbittorrent\" \
--label \"org.opencontainers.image.description=The [Qbittorrent](https://www.qbittorrent.org/) project aims to provide an open-source software alternative to µTorrent. qBittorrent is based on the Qt toolkit and libtorrent-rasterbar library.\" \
--no-cache --pull -t ${IMAGE}:amd64-${META_TAG} \
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
} }
} }
stage('Build ARMHF') { stage('Build ARMHF') {
@@ -407,8 +435,21 @@ pipeline {
sh '''#! /bin/bash sh '''#! /bin/bash
echo $GITHUB_TOKEN | docker login ghcr.io -u LinuxServer-CI --password-stdin echo $GITHUB_TOKEN | docker login ghcr.io -u LinuxServer-CI --password-stdin
''' '''
sh "docker build --no-cache --pull -f Dockerfile.armhf -t ${IMAGE}:arm32v7-${META_TAG} \ sh "docker build \
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ." --label \"org.opencontainers.image.created=${GITHUB_DATE}\" \
--label \"org.opencontainers.image.authors=linuxserver.io\" \
--label \"org.opencontainers.image.url=https://github.com/linuxserver/docker-qbittorrent/packages\" \
--label \"org.opencontainers.image.documentation=https://docs.linuxserver.io/images/docker-qbittorrent\" \
--label \"org.opencontainers.image.source=https://github.com/linuxserver/docker-qbittorrent\" \
--label \"org.opencontainers.image.version=${EXT_RELEASE_CLEAN}-ls${LS_TAG_NUMBER}\" \
--label \"org.opencontainers.image.revision=${COMMIT_SHA}\" \
--label \"org.opencontainers.image.vendor=linuxserver.io\" \
--label \"org.opencontainers.image.licenses=GPL-3.0-only\" \
--label \"org.opencontainers.image.ref.name=${COMMIT_SHA}\" \
--label \"org.opencontainers.image.title=Qbittorrent\" \
--label \"org.opencontainers.image.description=The [Qbittorrent](https://www.qbittorrent.org/) project aims to provide an open-source software alternative to µTorrent. qBittorrent is based on the Qt toolkit and libtorrent-rasterbar library.\" \
--no-cache --pull -f Dockerfile.armhf -t ${IMAGE}:arm32v7-${META_TAG} \
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
sh "docker tag ${IMAGE}:arm32v7-${META_TAG} ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}" sh "docker tag ${IMAGE}:arm32v7-${META_TAG} ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}"
retry(5) { retry(5) {
sh "docker push ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}" sh "docker push ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}"
@@ -428,8 +469,21 @@ pipeline {
sh '''#! /bin/bash sh '''#! /bin/bash
echo $GITHUB_TOKEN | docker login ghcr.io -u LinuxServer-CI --password-stdin echo $GITHUB_TOKEN | docker login ghcr.io -u LinuxServer-CI --password-stdin
''' '''
sh "docker build --no-cache --pull -f Dockerfile.aarch64 -t ${IMAGE}:arm64v8-${META_TAG} \ sh "docker build \
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ." --label \"org.opencontainers.image.created=${GITHUB_DATE}\" \
--label \"org.opencontainers.image.authors=linuxserver.io\" \
--label \"org.opencontainers.image.url=https://github.com/linuxserver/docker-qbittorrent/packages\" \
--label \"org.opencontainers.image.documentation=https://docs.linuxserver.io/images/docker-qbittorrent\" \
--label \"org.opencontainers.image.source=https://github.com/linuxserver/docker-qbittorrent\" \
--label \"org.opencontainers.image.version=${EXT_RELEASE_CLEAN}-ls${LS_TAG_NUMBER}\" \
--label \"org.opencontainers.image.revision=${COMMIT_SHA}\" \
--label \"org.opencontainers.image.vendor=linuxserver.io\" \
--label \"org.opencontainers.image.licenses=GPL-3.0-only\" \
--label \"org.opencontainers.image.ref.name=${COMMIT_SHA}\" \
--label \"org.opencontainers.image.title=Qbittorrent\" \
--label \"org.opencontainers.image.description=The [Qbittorrent](https://www.qbittorrent.org/) project aims to provide an open-source software alternative to µTorrent. qBittorrent is based on the Qt toolkit and libtorrent-rasterbar library.\" \
--no-cache --pull -f Dockerfile.aarch64 -t ${IMAGE}:arm64v8-${META_TAG} \
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
sh "docker tag ${IMAGE}:arm64v8-${META_TAG} ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}" sh "docker tag ${IMAGE}:arm64v8-${META_TAG} ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
retry(5) { retry(5) {
sh "docker push ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}" sh "docker push ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
@@ -740,7 +794,7 @@ pipeline {
echo '{"tag_name":"'${META_TAG}'",\ echo '{"tag_name":"'${META_TAG}'",\
"target_commitish": "unstable",\ "target_commitish": "unstable",\
"name": "'${META_TAG}'",\ "name": "'${META_TAG}'",\
"body": "**LinuxServer Changes:**\\n\\n'${LS_RELEASE_NOTES}'\\n**Remote Changes:**\\n\\n' > start "body": "**LinuxServer Changes:**\\n\\n'${LS_RELEASE_NOTES}'\\n\\n**Remote Changes:**\\n\\n' > start
printf '","draft": false,"prerelease": true}' >> releasebody.json printf '","draft": false,"prerelease": true}' >> releasebody.json
paste -d'\\0' start releasebody.json > releasebody.json.done paste -d'\\0' start releasebody.json > releasebody.json.done
curl -H "Authorization: token ${GITHUB_TOKEN}" -X POST https://api.github.com/repos/${LS_USER}/${LS_REPO}/releases -d @releasebody.json.done''' curl -H "Authorization: token ${GITHUB_TOKEN}" -X POST https://api.github.com/repos/${LS_USER}/${LS_REPO}/releases -d @releasebody.json.done'''
@@ -765,7 +819,7 @@ pipeline {
set -e set -e
TEMPDIR=$(mktemp -d) TEMPDIR=$(mktemp -d)
docker pull ghcr.io/linuxserver/jenkins-builder:latest docker pull ghcr.io/linuxserver/jenkins-builder:latest
docker run --rm -e CONTAINER_NAME=${CONTAINER_NAME} -e GITHUB_BRANCH="${BRANCH_NAME}" -v ${TEMPDIR}:/ansible/jenkins ghcr.io/linuxserver/jenkins-builder:latest docker run --rm -e CONTAINER_NAME=${CONTAINER_NAME} -e GITHUB_BRANCH="${BRANCH_NAME}" -v ${TEMPDIR}:/ansible/jenkins ghcr.io/linuxserver/jenkins-builder:latest
docker pull ghcr.io/linuxserver/readme-sync docker pull ghcr.io/linuxserver/readme-sync
docker run --rm=true \ docker run --rm=true \
-e DOCKERHUB_USERNAME=$DOCKERUSER \ -e DOCKERHUB_USERNAME=$DOCKERUSER \

View File

@@ -1,5 +1,5 @@
<!-- DO NOT EDIT THIS FILE MANUALLY --> <!-- DO NOT EDIT THIS FILE MANUALLY -->
<!-- Please read the CONTRIBUTING.md --> <!-- Please read the https://github.com/linuxserver/docker-qbittorrent/blob/unstable/.github/CONTRIBUTING.md -->
[![linuxserver.io](https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/linuxserver_medium.png)](https://linuxserver.io) [![linuxserver.io](https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/linuxserver_medium.png)](https://linuxserver.io)
@@ -12,13 +12,14 @@
The [LinuxServer.io](https://linuxserver.io) team brings you another container release featuring: The [LinuxServer.io](https://linuxserver.io) team brings you another container release featuring:
* regular and timely application updates * regular and timely application updates
* easy user mappings (PGID, PUID) * easy user mappings (PGID, PUID)
* custom base image with s6 overlay * custom base image with s6 overlay
* weekly base OS updates with common layers across the entire LinuxServer.io ecosystem to minimise space usage, down time and bandwidth * weekly base OS updates with common layers across the entire LinuxServer.io ecosystem to minimise space usage, down time and bandwidth
* regular security updates * regular security updates
Find us at: Find us at:
* [Blog](https://blog.linuxserver.io) - all the things you can do with our containers including How-To guides, opinions and much more! * [Blog](https://blog.linuxserver.io) - all the things you can do with our containers including How-To guides, opinions and much more!
* [Discord](https://discord.gg/YWrKVTn) - realtime support / chat with the community and the team. * [Discord](https://discord.gg/YWrKVTn) - realtime support / chat with the community and the team.
* [Discourse](https://discourse.linuxserver.io) - post on our community forum. * [Discourse](https://discourse.linuxserver.io) - post on our community forum.
@@ -65,6 +66,31 @@ This image provides various versions that are available via tags. `latest` tag u
| latest | Stable qbittorrent releases | | latest | Stable qbittorrent releases |
| unstable | Unstable qbittorrent releases | | unstable | Unstable qbittorrent releases |
## Application Setup
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.
### 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=*
```
## Usage ## Usage
Here are some example snippets to help you get started creating a container. Here are some example snippets to help you get started creating a container.
@@ -97,7 +123,7 @@ services:
### docker cli ### docker cli
``` ```bash
docker run -d \ docker run -d \
--name=qbittorrent \ --name=qbittorrent \
-e PUID=1000 \ -e PUID=1000 \
@@ -113,7 +139,6 @@ docker run -d \
ghcr.io/linuxserver/qbittorrent ghcr.io/linuxserver/qbittorrent
``` ```
## Parameters ## Parameters
Container images are configured using parameters passed at runtime (such as those above). These parameters are separated by a colon and indicate `<external>:<internal>` respectively. For example, `-p 8080:80` would expose port `80` from inside the container to be accessible from the host's IP on port `8080` outside the container. Container images are configured using parameters passed at runtime (such as those above). These parameters are separated by a colon and indicate `<external>:<internal>` respectively. For example, `-p 8080:80` would expose port `80` from inside the container to be accessible from the host's IP on port `8080` outside the container.
@@ -136,7 +161,7 @@ You can set any environment variable from a file by using a special prepend `FIL
As an example: As an example:
``` ```bash
-e FILE__PASSWORD=/run/secrets/mysecretpassword -e FILE__PASSWORD=/run/secrets/mysecretpassword
``` ```
@@ -155,45 +180,17 @@ Ensure any volume directories on the host are owned by the same user you specify
In this instance `PUID=1000` and `PGID=1000`, to find yours use `id user` as below: In this instance `PUID=1000` and `PGID=1000`, to find yours use `id user` as below:
``` ```bash
$ id username $ id username
uid=1000(dockeruser) gid=1000(dockergroup) groups=1000(dockergroup) uid=1000(dockeruser) gid=1000(dockergroup) groups=1000(dockergroup)
``` ```
&nbsp;
## Application Setup
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.
### 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=*
```
## Docker Mods ## Docker Mods
[![Docker Mods](https://img.shields.io/badge/dynamic/yaml?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=qbittorrent&query=%24.mods%5B%27qbittorrent%27%5D.mod_count&url=https%3A%2F%2Fraw.githubusercontent.com%2Flinuxserver%2Fdocker-mods%2Fmaster%2Fmod-list.yml)](https://mods.linuxserver.io/?mod=qbittorrent "view available mods for this container.") [![Docker Universal Mods](https://img.shields.io/badge/dynamic/yaml?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=universal&query=%24.mods%5B%27universal%27%5D.mod_count&url=https%3A%2F%2Fraw.githubusercontent.com%2Flinuxserver%2Fdocker-mods%2Fmaster%2Fmod-list.yml)](https://mods.linuxserver.io/?mod=universal "view available universal mods.") [![Docker Mods](https://img.shields.io/badge/dynamic/yaml?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=qbittorrent&query=%24.mods%5B%27qbittorrent%27%5D.mod_count&url=https%3A%2F%2Fraw.githubusercontent.com%2Flinuxserver%2Fdocker-mods%2Fmaster%2Fmod-list.yml)](https://mods.linuxserver.io/?mod=qbittorrent "view available mods for this container.") [![Docker Universal Mods](https://img.shields.io/badge/dynamic/yaml?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=universal&query=%24.mods%5B%27universal%27%5D.mod_count&url=https%3A%2F%2Fraw.githubusercontent.com%2Flinuxserver%2Fdocker-mods%2Fmaster%2Fmod-list.yml)](https://mods.linuxserver.io/?mod=universal "view available universal mods.")
We publish various [Docker Mods](https://github.com/linuxserver/docker-mods) to enable additional functionality within the containers. The list of Mods available for this image (if any) as well as universal mods that can be applied to any one of our images can be accessed via the dynamic badges above. We publish various [Docker Mods](https://github.com/linuxserver/docker-mods) to enable additional functionality within the containers. The list of Mods available for this image (if any) as well as universal mods that can be applied to any one of our images can be accessed via the dynamic badges above.
## Support Info ## Support Info
* Shell access whilst the container is running: `docker exec -it qbittorrent /bin/bash` * Shell access whilst the container is running: `docker exec -it qbittorrent /bin/bash`
@@ -210,6 +207,7 @@ Most of our images are static, versioned, and require an image update and contai
Below are the instructions for updating containers: Below are the instructions for updating containers:
### Via Docker Compose ### Via Docker Compose
* Update all images: `docker-compose pull` * Update all images: `docker-compose pull`
* or update a single image: `docker-compose pull qbittorrent` * or update a single image: `docker-compose pull qbittorrent`
* Let compose update all containers as necessary: `docker-compose up -d` * Let compose update all containers as necessary: `docker-compose up -d`
@@ -217,6 +215,7 @@ Below are the instructions for updating containers:
* You can also remove the old dangling images: `docker image prune` * You can also remove the old dangling images: `docker image prune`
### Via Docker Run ### Via Docker Run
* Update the image: `docker pull ghcr.io/linuxserver/qbittorrent` * Update the image: `docker pull ghcr.io/linuxserver/qbittorrent`
* Stop the running container: `docker stop qbittorrent` * Stop the running container: `docker stop qbittorrent`
* Delete the container: `docker rm qbittorrent` * Delete the container: `docker rm qbittorrent`
@@ -224,24 +223,29 @@ Below are the instructions for updating containers:
* You can also remove the old dangling images: `docker image prune` * You can also remove the old dangling images: `docker image prune`
### Via Watchtower auto-updater (only use if you don't remember the original parameters) ### Via Watchtower auto-updater (only use if you don't remember the original parameters)
* Pull the latest image at its tag and replace it with the same env variables in one run: * Pull the latest image at its tag and replace it with the same env variables in one run:
```
```bash
docker run --rm \ docker run --rm \
-v /var/run/docker.sock:/var/run/docker.sock \ -v /var/run/docker.sock:/var/run/docker.sock \
containrrr/watchtower \ containrrr/watchtower \
--run-once qbittorrent --run-once qbittorrent
``` ```
* You can also remove the old dangling images: `docker image prune` * You can also remove the old dangling images: `docker image prune`
**Note:** We do not endorse the use of Watchtower as a solution to automated updates of existing Docker containers. In fact we generally discourage automated updates. However, this is a useful tool for one-time manual updates of containers where you have forgotten the original parameters. In the long term, we highly recommend using [Docker Compose](https://docs.linuxserver.io/general/docker-compose). **Note:** We do not endorse the use of Watchtower as a solution to automated updates of existing Docker containers. In fact we generally discourage automated updates. However, this is a useful tool for one-time manual updates of containers where you have forgotten the original parameters. In the long term, we highly recommend using [Docker Compose](https://docs.linuxserver.io/general/docker-compose).
### Image Update Notifications - Diun (Docker Image Update Notifier) ### Image Update Notifications - Diun (Docker Image Update Notifier)
* We recommend [Diun](https://crazymax.dev/diun/) for update notifications. Other tools that automatically update containers unattended are not recommended or supported. * We recommend [Diun](https://crazymax.dev/diun/) for update notifications. Other tools that automatically update containers unattended are not recommended or supported.
## Building locally ## Building locally
If you want to make local modifications to these images for development purposes or just to customize the logic: If you want to make local modifications to these images for development purposes or just to customize the logic:
```
```bash
git clone https://github.com/linuxserver/docker-qbittorrent.git git clone https://github.com/linuxserver/docker-qbittorrent.git
cd docker-qbittorrent cd docker-qbittorrent
docker build \ docker build \
@@ -251,7 +255,8 @@ docker build \
``` ```
The ARM variants can be built on x86_64 hardware using `multiarch/qemu-user-static` The ARM variants can be built on x86_64 hardware using `multiarch/qemu-user-static`
```
```bash
docker run --rm --privileged multiarch/qemu-user-static:register --reset docker run --rm --privileged multiarch/qemu-user-static:register --reset
``` ```

View File

@@ -1,6 +1,6 @@
adduser3.118ubuntu2 adduser3.118ubuntu2
apt2.0.4 apt2.0.5
apt-utils2.0.4 apt-utils2.0.5
base-files11ubuntu5.3 base-files11ubuntu5.3
base-passwd3.5.47 base-passwd3.5.47
bash5.0-6ubuntu1.1 bash5.0-6ubuntu1.1
@@ -8,7 +8,7 @@ bsdutils1:2.34-0.1ubuntu9.1
bzip21.0.8-2 bzip21.0.8-2
ca-certificates20210119~20.04.1 ca-certificates20210119~20.04.1
coreutils8.30-3ubuntu2 coreutils8.30-3ubuntu2
curl7.68.0-1ubuntu2.4 curl7.68.0-1ubuntu2.5
dash0.5.10.2-6 dash0.5.10.2-6
dbus1.12.16-2ubuntu2.1 dbus1.12.16-2ubuntu2.1
debconf1.5.73 debconf1.5.73
@@ -40,7 +40,7 @@ init-system-helpers1.57
krb5-locales1.17-6ubuntu4.1 krb5-locales1.17-6ubuntu4.1
libacl12.2.53-6 libacl12.2.53-6
libapparmor12.13.3-7ubuntu5.1 libapparmor12.13.3-7ubuntu5.1
libapt-pkg6.02.0.4 libapt-pkg6.02.0.5
libasn1-8-heimdal7.7.0+dfsg-1ubuntu1 libasn1-8-heimdal7.7.0+dfsg-1ubuntu1
libassuan02.5.3-7ubuntu2 libassuan02.5.3-7ubuntu2
libattr11:2.4.48-5 libattr11:2.4.48-5
@@ -54,7 +54,7 @@ libcap-ng00.7.9-2.1build1
libc-bin2.31-0ubuntu9.2 libc-bin2.31-0ubuntu9.2
libcom-err21.45.5-2ubuntu1 libcom-err21.45.5-2ubuntu1
libcrypt11:4.4.10-10ubuntu4 libcrypt11:4.4.10-10ubuntu4
libcurl47.68.0-1ubuntu2.4 libcurl47.68.0-1ubuntu2.5
libdb5.35.3.28+dfsg1-0.6ubuntu2 libdb5.35.3.28+dfsg1-0.6ubuntu2
libdbus-1-31.12.16-2ubuntu2.1 libdbus-1-31.12.16-2ubuntu2.1
libdebconfclient00.251ubuntu1 libdebconfclient00.251ubuntu1
@@ -78,7 +78,7 @@ libgssapi-krb5-21.17-6ubuntu4.1
libhcrypto4-heimdal7.7.0+dfsg-1ubuntu1 libhcrypto4-heimdal7.7.0+dfsg-1ubuntu1
libheimbase1-heimdal7.7.0+dfsg-1ubuntu1 libheimbase1-heimdal7.7.0+dfsg-1ubuntu1
libheimntlm0-heimdal7.7.0+dfsg-1ubuntu1 libheimntlm0-heimdal7.7.0+dfsg-1ubuntu1
libhogweed53.5.1+really3.5.1-2 libhogweed53.5.1+really3.5.1-2ubuntu0.1
libhx509-5-heimdal7.7.0+dfsg-1ubuntu1 libhx509-5-heimdal7.7.0+dfsg-1ubuntu1
libicu6666.1-2ubuntu2 libicu6666.1-2ubuntu2
libidn2-02.2.0-2 libidn2-02.2.0-2
@@ -99,7 +99,7 @@ libmpdec22.4.2-3
libncurses66.2-0ubuntu2 libncurses66.2-0ubuntu2
libncursesw66.2-0ubuntu2 libncursesw66.2-0ubuntu2
libnetaddr-ip-perl4.079+dfsg-1build4 libnetaddr-ip-perl4.079+dfsg-1build4
libnettle73.5.1+really3.5.1-2 libnettle73.5.1+really3.5.1-2ubuntu0.1
libnghttp2-141.40.0-1build1 libnghttp2-141.40.0-1build1
libnpth01.6-1 libnpth01.6-1
libp11-kit00.23.20-1ubuntu0.1 libp11-kit00.23.20-1ubuntu0.1
@@ -111,7 +111,7 @@ libpcre2-16-010.34-7
libpcre2-8-010.34-7 libpcre2-8-010.34-7
libpcre32:8.39-12build1 libpcre32:8.39-12build1
libperl5.305.30.0-9ubuntu0.2 libperl5.305.30.0-9ubuntu0.2
libprocps82:3.3.16-1ubuntu2 libprocps82:3.3.16-1ubuntu2.1
libpsl50.21.0-1ubuntu1 libpsl50.21.0-1ubuntu1
libpython3.8-minimal3.8.5-1~20.04.2 libpython3.8-minimal3.8.5-1~20.04.2
libpython3.8-stdlib3.8.5-1~20.04.2 libpython3.8-stdlib3.8.5-1~20.04.2
@@ -126,7 +126,7 @@ librtmp12.4+20151223.gitfa8646d.1-2build1
libsasl2-22.1.27+dfsg-2 libsasl2-22.1.27+dfsg-2
libsasl2-modules2.1.27+dfsg-2 libsasl2-modules2.1.27+dfsg-2
libsasl2-modules-db2.1.27+dfsg-2 libsasl2-modules-db2.1.27+dfsg-2
libseccomp22.4.3-1ubuntu3.20.04.3 libseccomp22.5.1-1ubuntu1~20.04.1
libselinux13.0-1build2 libselinux13.0-1build2
libsemanage13.0-1build2 libsemanage13.0-1build2
libsemanage-common3.0-1build2 libsemanage-common3.0-1build2
@@ -136,13 +136,13 @@ libsocket6-perl0.29-1build1
libsqlite3-03.31.1-4ubuntu0.2 libsqlite3-03.31.1-4ubuntu0.2
libss21.45.5-2ubuntu1 libss21.45.5-2ubuntu1
libssh-40.9.3-2ubuntu2.1 libssh-40.9.3-2ubuntu2.1
libssl1.11.1.1f-1ubuntu2.2 libssl1.11.1.1f-1ubuntu2.3
libstdc++610.2.0-5ubuntu1~20.04 libstdc++610.2.0-5ubuntu1~20.04
libsystemd0245.4-4ubuntu3.4 libsystemd0245.4-4ubuntu3.6
libtasn1-64.16.0-2 libtasn1-64.16.0-2
libtinfo66.2-0ubuntu2 libtinfo66.2-0ubuntu2
libtorrent-rasterbar101.2.13+git20210323.34a979720b-1ppa1~20.04 libtorrent-rasterbar101.2.13+git20210323.34a979720b-1ppa1~20.04
libudev1245.4-4ubuntu3.4 libudev1245.4-4ubuntu3.6
libunistring20.9.10-2 libunistring20.9.10-2
libuuid12.34-0.1ubuntu9.1 libuuid12.34-0.1ubuntu9.1
libwind0-heimdal7.7.0+dfsg-1ubuntu1 libwind0-heimdal7.7.0+dfsg-1ubuntu1
@@ -158,7 +158,7 @@ mount2.34-0.1ubuntu9.1
ncurses-base6.2-0ubuntu2 ncurses-base6.2-0ubuntu2
ncurses-bin6.2-0ubuntu2 ncurses-bin6.2-0ubuntu2
netbase6.1 netbase6.1
openssl1.1.1f-1ubuntu2.2 openssl1.1.1f-1ubuntu2.3
p7zip16.02+dfsg-7build1 p7zip16.02+dfsg-7build1
p7zip-full16.02+dfsg-7build1 p7zip-full16.02+dfsg-7build1
passwd1:4.8.1-1ubuntu5.20.04 passwd1:4.8.1-1ubuntu5.20.04
@@ -166,14 +166,14 @@ perl5.30.0-9ubuntu0.2
perl-base5.30.0-9ubuntu0.2 perl-base5.30.0-9ubuntu0.2
perl-modules-5.305.30.0-9ubuntu0.2 perl-modules-5.305.30.0-9ubuntu0.2
pinentry-curses1.1.0-3build1 pinentry-curses1.1.0-3build1
procps2:3.3.16-1ubuntu2 procps2:3.3.16-1ubuntu2.1
publicsuffix20200303.0012-1 publicsuffix20200303.0012-1
python33.8.2-0ubuntu2 python33.8.2-0ubuntu2
python3.83.8.5-1~20.04.2 python3.83.8.5-1~20.04.2
python3.8-minimal3.8.5-1~20.04.2 python3.8-minimal3.8.5-1~20.04.2
python3-minimal3.8.2-0ubuntu2 python3-minimal3.8.2-0ubuntu2
qbittorrent-cli1.6.20334-1 qbittorrent-cli1.6.20334-1
qbittorrent-nox4.4.0~202103241608-7246-9f386afe9~ubuntu20.04.1 qbittorrent-nox4.4.0~202104221634-7284-376dedebb~ubuntu20.04.1
qttranslations5-l10n5.12.8-0ubuntu1 qttranslations5-l10n5.12.8-0ubuntu1
readline-common8.0-4 readline-common8.0-4
sed4.7-1 sed4.7-1
@@ -182,7 +182,7 @@ shared-mime-info1.15-1
sysvinit-utils2.96-2.1ubuntu1 sysvinit-utils2.96-2.1ubuntu1
tar1.30+dfsg-7ubuntu0.20.04.1 tar1.30+dfsg-7ubuntu0.20.04.1
tzdata2021a-0ubuntu0.20.04 tzdata2021a-0ubuntu0.20.04
ubuntu-keyring2020.02.11.2 ubuntu-keyring2020.02.11.4
unrar1:5.6.6-2build1 unrar1:5.6.6-2build1
unzip6.0-25ubuntu1 unzip6.0-25ubuntu1
util-linux2.34-0.1ubuntu9.1 util-linux2.34-0.1ubuntu9.1