move containers from .containers to containers
This commit is contained in:
@@ -0,0 +1,73 @@
|
||||
# hadolint ignore=DL3007
|
||||
FROM ghcr.io/truecharts/alpine:latest
|
||||
|
||||
# Metadata params
|
||||
ARG TARGETPLATFORM
|
||||
ARG VERSION
|
||||
|
||||
# hadolint ignore=DL3002
|
||||
USER root
|
||||
|
||||
SHELL ["/bin/sh", "-o", "pipefail", "-c"]
|
||||
|
||||
|
||||
# hadolint ignore=DL3008,DL3013,DL3015,DL3017,DL3018,DL3019,SC2086,SC2155
|
||||
RUN \
|
||||
echo "==> Upgrading apk and system..." \
|
||||
&& apk --update --no-cache add \
|
||||
ca-certificates \
|
||||
git \
|
||||
openssh-client \
|
||||
openssl \
|
||||
python3\
|
||||
py3-pip \
|
||||
py3-cryptography \
|
||||
rsync \
|
||||
sshpass \
|
||||
&& echo "==> Adding build-dependencies..." \
|
||||
&& apk --update --no-cache add --virtual \
|
||||
.build-deps \
|
||||
python3-dev \
|
||||
libffi-dev \
|
||||
openssl-dev \
|
||||
build-base \
|
||||
curl \
|
||||
&& echo "==> Adding Python runtime..." \
|
||||
&& pip3 install --no-cache-dir --upgrade \
|
||||
pip \
|
||||
cffi \
|
||||
&& echo "==> Installing Ansible..." \
|
||||
&& pip3 install --no-cache-dir \
|
||||
ansible==${VERSION} \
|
||||
ansible-lint \
|
||||
&& echo "==> install taskfile.dev..." \
|
||||
&& sh -c "$(curl --location https://taskfile.dev/install.sh)" \
|
||||
&& echo "==> Cleaning up..." \
|
||||
&& apk del \
|
||||
.build-deps \
|
||||
&& rm -rf /var/cache/apk/* \
|
||||
&& echo "==> Adding hosts for convenience..." \
|
||||
&& mkdir -p /etc/ansible /ansible \
|
||||
&& echo "[local]" >> /etc/ansible/hosts \
|
||||
&& echo "localhost" >> /etc/ansible/hosts
|
||||
|
||||
|
||||
ENV ANSIBLE_GATHERING smart
|
||||
ENV ANSIBLE_HOST_KEY_CHECKING false
|
||||
ENV ANSIBLE_RETRY_FILES_ENABLED false
|
||||
ENV ANSIBLE_ROLES_PATH /ansible/playbooks/roles
|
||||
ENV ANSIBLE_SSH_PIPELINING True
|
||||
ENV PYTHONPATH /ansible/lib
|
||||
ENV PATH /ansible/bin:$PATH
|
||||
ENV ANSIBLE_LIBRARY /ansible/library
|
||||
|
||||
WORKDIR /ansible/playbooks
|
||||
|
||||
COPY ./.containers/apps/ansible/entrypoint.sh /entrypoint.sh
|
||||
|
||||
ENTRYPOINT ["/entrypoint.sh"]
|
||||
|
||||
LABEL "maintainer"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "authors"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "org.opencontainers.image.source"="https://github.com/truecharts/apps/tree/master/.containers/apps/bazarr"
|
||||
LABEL "org.opencontainers.image.documentation "="https://truecharts.org"
|
||||
@@ -0,0 +1,59 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Simple wrapper for executing ansible-galaxy and ansible-playbook.
|
||||
#
|
||||
# USAGE:
|
||||
# ansible-playbook-wrapper [other ansible-playbook arguments]
|
||||
#
|
||||
# ENVIRONMENT VARIABLES:
|
||||
#
|
||||
# - PIP_REQUIREMENTS: pip requirements filename;
|
||||
# default = "requirements.txt"
|
||||
# - ANSIBLE_REQUIREMENTS: ansible requirements filename;
|
||||
# default = "requirements.yml"
|
||||
# - DEPLOY_KEY deploy key (private)
|
||||
|
||||
# Rotate ansible log if exist
|
||||
if [ -f "ansible.log" ]; then
|
||||
DATE_LOG=$(date -d "$(head -1 ansible.log | cut -d, -f1 )" +%Y%m%d-%H%M%S) 2>/dev/null
|
||||
if [ -n "$DATE_LOG" ]; then
|
||||
mv ansible.log ansible-${DATE_LOG}.log
|
||||
gzip ansible-${DATE_LOG}.log &
|
||||
fi
|
||||
fi
|
||||
|
||||
# Optional deploy key
|
||||
if [ ! -z "$DEPLOY_KEY" ] && [ ! -f "/root/.ssh/id_rsa" ]; then
|
||||
mkdir -p /root/.ssh/
|
||||
echo "${DEPLOY_KEY}" > /root/.ssh/id_rsa
|
||||
chmod 0600 /root/.ssh/id_rsa
|
||||
fi
|
||||
|
||||
# Loadkey into ssh-agent if key exist
|
||||
if [ -f "/root/.ssh/id_rsa" ]; then
|
||||
eval $(ssh-agent)
|
||||
ssh-add /root/.ssh/id_rsa
|
||||
fi
|
||||
|
||||
# install pip requirements, if any
|
||||
if [ -z "$PIP_REQUIREMENTS" ]; then
|
||||
PIP_REQUIREMENTS=requirements.txt
|
||||
fi
|
||||
|
||||
if [ -f "$PIP_REQUIREMENTS" ]; then
|
||||
pip3 install --upgrade -r $PIP_REQUIREMENTS
|
||||
fi
|
||||
|
||||
|
||||
# install Galaxy roles, if any
|
||||
if [ -z "$ANSIBLE_REQUIREMENTS" ]; then
|
||||
ANSIBLE_REQUIREMENTS=requirements.yml
|
||||
fi
|
||||
|
||||
if [ -f "$ANSIBLE_REQUIREMENTS" ]; then
|
||||
ansible-galaxy install $ANSIBLE_GALAXY_PARAM -r $ANSIBLE_REQUIREMENTS
|
||||
fi
|
||||
|
||||
cd /ansible
|
||||
|
||||
exec "$@"
|
||||
@@ -0,0 +1,6 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
version=$(curl -sX GET https://pypi.org/pypi/ansible/json | jq --raw-output '.["releases"] | keys[]' | grep -v rc | grep -v a | grep -v b | tail -n1rep -v buildcache | tail -n1)
|
||||
version="${version#*v}"
|
||||
version="${version#*release-}"
|
||||
echo "${version}"
|
||||
@@ -0,0 +1,33 @@
|
||||
# hadolint ignore=DL3007
|
||||
ARG VERSION
|
||||
|
||||
FROM ghcr.io/k8s-at-home/appdaemon:v${VERSION}
|
||||
|
||||
|
||||
ARG TARGETPLATFORM
|
||||
|
||||
USER root
|
||||
|
||||
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
|
||||
|
||||
# hadolint ignore=DL3008,DL3015,SC2086
|
||||
RUN \
|
||||
usermod -l apps kah \
|
||||
&& \
|
||||
groupmod -n apps kah \
|
||||
&& chown -R apps:apps /config \
|
||||
&& rm -rf /app/package_info \
|
||||
&& \
|
||||
printf "UpdateMethod=docker\nPackageVersion=%s\nPackageAuthor=[TrueCharts Project](https://truecharts.org)" "${VERSION}" > /app/package_info
|
||||
|
||||
|
||||
USER apps
|
||||
|
||||
EXPOSE 5050
|
||||
|
||||
CMD ["/entrypoint.sh"]
|
||||
|
||||
LABEL "maintainer"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "authors"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "org.opencontainers.image.source"="https://github.com/truecharts/apps/tree/master/.containers/apps/appdaemon"
|
||||
LABEL "org.opencontainers.image.documentation "="https://truecharts.org"
|
||||
@@ -0,0 +1 @@
|
||||
4.0.8
|
||||
@@ -0,0 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
TOKEN=$(curl https://ghcr.io/token\?scope\="repository:k8s-at-home/appdaemon:pull" | jq --raw-output '.[]')
|
||||
version=$(curl -H "Authorization: Bearer ${TOKEN}" https://ghcr.io/v2/k8s-at-home/appdaemon/tags/list | jq --raw-output '.tags[]' | grep -v latest | grep -v buildcache | tail -n1)
|
||||
version="${version#*v}"
|
||||
version="${version#*release-}"
|
||||
echo "${version}"
|
||||
@@ -0,0 +1,33 @@
|
||||
# hadolint ignore=DL3007
|
||||
ARG VERSION
|
||||
|
||||
FROM ghcr.io/k8s-at-home/bazarr:v${VERSION}
|
||||
|
||||
|
||||
ARG TARGETPLATFORM
|
||||
|
||||
USER root
|
||||
|
||||
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
|
||||
|
||||
# hadolint ignore=DL3008,DL3015,SC2086
|
||||
RUN \
|
||||
usermod -l apps kah \
|
||||
&& \
|
||||
groupmod -n apps kah \
|
||||
&& chown -R apps:apps /config \
|
||||
&& rm -rf /app/package_info \
|
||||
&& \
|
||||
printf "UpdateMethod=docker\nPackageVersion=%s\nPackageAuthor=[TrueCharts Project](https://truecharts.org)" "${VERSION}" > /app/package_info
|
||||
|
||||
|
||||
USER apps
|
||||
|
||||
EXPOSE 6767
|
||||
|
||||
CMD ["/entrypoint.sh"]
|
||||
|
||||
LABEL "maintainer"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "authors"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "org.opencontainers.image.source"="https://github.com/truecharts/apps/tree/master/.containers/apps/bazarr"
|
||||
LABEL "org.opencontainers.image.documentation "="https://truecharts.org"
|
||||
@@ -0,0 +1 @@
|
||||
0.9.5
|
||||
@@ -0,0 +1,15 @@
|
||||
---
|
||||
process:
|
||||
python3:
|
||||
running: true
|
||||
|
||||
port:
|
||||
tcp:6767:
|
||||
listening: true
|
||||
|
||||
# # TODO fix this test
|
||||
# http:
|
||||
# http://localhost:6767:
|
||||
# status: 200
|
||||
# body:
|
||||
# - '<title>Bazarr</title>'
|
||||
@@ -0,0 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
TOKEN=$(curl https://ghcr.io/token\?scope\="repository:k8s-at-home/bazarr:pull" | jq --raw-output '.[]')
|
||||
version=$(curl -H "Authorization: Bearer ${TOKEN}" https://ghcr.io/v2/k8s-at-home/bazarr/tags/list | jq --raw-output '.tags[]' | grep -v latest | grep -v buildcache | tail -n1)
|
||||
version="${version#*v}"
|
||||
version="${version#*release-}"
|
||||
echo "${version}"
|
||||
@@ -0,0 +1,33 @@
|
||||
# hadolint ignore=DL3007
|
||||
ARG VERSION
|
||||
|
||||
FROM ghcr.io/k8s-at-home/emby:v${VERSION}
|
||||
|
||||
|
||||
ARG TARGETPLATFORM
|
||||
|
||||
USER root
|
||||
|
||||
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
|
||||
|
||||
# hadolint ignore=DL3008,DL3015,SC2086
|
||||
RUN \
|
||||
usermod -l apps kah \
|
||||
&& \
|
||||
groupmod -n apps kah \
|
||||
&& chown -R apps:apps /config \
|
||||
&& rm -rf /app/package_info \
|
||||
&& \
|
||||
printf "UpdateMethod=docker\nPackageVersion=%s\nPackageAuthor=[TrueCharts Project](https://truecharts.org)" "${VERSION}" > /app/package_info
|
||||
|
||||
|
||||
USER apps
|
||||
|
||||
EXPOSE 8096 8920
|
||||
|
||||
CMD ["/entrypoint.sh"]
|
||||
|
||||
LABEL "maintainer"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "authors"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "org.opencontainers.image.source"="https://github.com/truecharts/apps/tree/master/.containers/apps/emby"
|
||||
LABEL "org.opencontainers.image.documentation "="https://truecharts.org"
|
||||
@@ -0,0 +1 @@
|
||||
4.6.1.0
|
||||
@@ -0,0 +1,19 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
#shellcheck disable=SC1091
|
||||
source "/shim/umask.sh"
|
||||
source "/shim/vpn.sh"
|
||||
|
||||
export LD_LIBRARY_PATH="${APP_DIR}"
|
||||
export FONTCONFIG_PATH="${APP_DIR}"/etc/fonts
|
||||
if [ -d "/lib/x86_64-linux-gnu" ]; then
|
||||
export LIBVA_DRIVERS_PATH=/usr/lib/x86_64-linux-gnu/dri:"${APP_DIR}"/dri
|
||||
fi
|
||||
export SSL_CERT_FILE="${APP_DIR}"/etc/ssl/certs/ca-certificates.crt
|
||||
|
||||
exec /app/EmbyServer \
|
||||
-programdata /config \
|
||||
-ffdetect /app/ffdetect \
|
||||
-ffmpeg /app/ffmpeg \
|
||||
-ffprobe /app/ffprobe \
|
||||
-restartexitcode 3
|
||||
@@ -0,0 +1,15 @@
|
||||
---
|
||||
process:
|
||||
EmbyServer:
|
||||
running: true
|
||||
|
||||
# # TODO fix this test
|
||||
# port:
|
||||
# tcp:8096:
|
||||
# listening: true
|
||||
|
||||
http:
|
||||
http://localhost:8096/web:
|
||||
status: 200
|
||||
body:
|
||||
- '<title>Emby</title>'
|
||||
@@ -0,0 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
TOKEN=$(curl https://ghcr.io/token\?scope\="repository:k8s-at-home/emby:pull" | jq --raw-output '.[]')
|
||||
version=$(curl -H "Authorization: Bearer ${TOKEN}" https://ghcr.io/v2/k8s-at-home/emby/tags/list | jq --raw-output '.tags[]' | grep -v latest | grep -v buildcache | tail -n1)
|
||||
version="${version#*v}"
|
||||
version="${version#*release-}"
|
||||
echo "${version}"
|
||||
@@ -0,0 +1,33 @@
|
||||
# hadolint ignore=DL3007
|
||||
ARG VERSION
|
||||
|
||||
FROM ghcr.io/k8s-at-home/jackett:v${VERSION}
|
||||
|
||||
|
||||
ARG TARGETPLATFORM
|
||||
|
||||
USER root
|
||||
|
||||
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
|
||||
|
||||
# hadolint ignore=DL3008,DL3015,SC2086
|
||||
RUN \
|
||||
usermod -l apps kah \
|
||||
&& \
|
||||
groupmod -n apps kah \
|
||||
&& chown -R apps:apps /config \
|
||||
&& rm -rf /app/package_info \
|
||||
&& \
|
||||
printf "UpdateMethod=docker\nPackageVersion=%s\nPackageAuthor=[TrueCharts Project](https://truecharts.org)" "${VERSION}" > /app/package_info
|
||||
|
||||
|
||||
USER apps
|
||||
|
||||
EXPOSE 9117
|
||||
|
||||
CMD ["/entrypoint.sh"]
|
||||
|
||||
LABEL "maintainer"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "authors"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "org.opencontainers.image.source"="https://github.com/truecharts/apps/tree/master/.containers/apps/jackett"
|
||||
LABEL "org.opencontainers.image.documentation "="https://truecharts.org"
|
||||
@@ -0,0 +1 @@
|
||||
0.18.181
|
||||
@@ -0,0 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
#shellcheck disable=SC1091
|
||||
source "/shim/umask.sh"
|
||||
source "/shim/vpn.sh"
|
||||
|
||||
exec /app/jackett --NoUpdates ${EXTRA_ARGS}
|
||||
@@ -0,0 +1,14 @@
|
||||
---
|
||||
process:
|
||||
jackett:
|
||||
running: true
|
||||
|
||||
port:
|
||||
tcp6:9117:
|
||||
listening: true
|
||||
|
||||
http:
|
||||
http://localhost:9117/UI/Login:
|
||||
status: 200
|
||||
body:
|
||||
- '<title>Jackett</title>'
|
||||
@@ -0,0 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
TOKEN=$(curl https://ghcr.io/token\?scope\="repository:k8s-at-home/jackett:pull" | jq --raw-output '.[]')
|
||||
version=$(curl -H "Authorization: Bearer ${TOKEN}" https://ghcr.io/v2/k8s-at-home/jackett/tags/list | jq --raw-output '.tags[]' | grep -v latest | grep -v buildcache | tail -n1)
|
||||
version="${version#*v}"
|
||||
version="${version#*release-}"
|
||||
echo "${version}"
|
||||
@@ -0,0 +1,33 @@
|
||||
# hadolint ignore=DL3007
|
||||
ARG VERSION
|
||||
|
||||
FROM ghcr.io/k8s-at-home/lidarr:v${VERSION}
|
||||
|
||||
|
||||
ARG TARGETPLATFORM
|
||||
|
||||
USER root
|
||||
|
||||
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
|
||||
|
||||
# hadolint ignore=DL3008,DL3015,SC2086
|
||||
RUN \
|
||||
usermod -l apps kah \
|
||||
&& \
|
||||
groupmod -n apps kah \
|
||||
&& chown -R apps:apps /config \
|
||||
&& rm -rf /app/package_info \
|
||||
&& \
|
||||
printf "UpdateMethod=docker\nPackageVersion=%s\nPackageAuthor=[TrueCharts Project](https://truecharts.org)" "${VERSION}" > /app/package_info
|
||||
|
||||
|
||||
USER apps
|
||||
|
||||
EXPOSE 8686
|
||||
|
||||
CMD ["/entrypoint.sh"]
|
||||
|
||||
LABEL "maintainer"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "authors"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "org.opencontainers.image.source"="https://github.com/truecharts/apps/tree/master/.containers/apps/lidarr"
|
||||
LABEL "org.opencontainers.image.documentation "="https://truecharts.org"
|
||||
@@ -0,0 +1 @@
|
||||
1.0.0.2226
|
||||
@@ -0,0 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
#shellcheck disable=SC1091
|
||||
source "/shim/umask.sh"
|
||||
source "/shim/vpn.sh"
|
||||
|
||||
exec /app/Lidarr --nobrowser --data=/config ${EXTRA_ARGS}
|
||||
@@ -0,0 +1,14 @@
|
||||
---
|
||||
process:
|
||||
Lidarr:
|
||||
running: true
|
||||
|
||||
port:
|
||||
tcp6:8686:
|
||||
listening: true
|
||||
|
||||
http:
|
||||
http://localhost:8686:
|
||||
status: 200
|
||||
body:
|
||||
- '<title>Lidarr</title>'
|
||||
@@ -0,0 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
TOKEN=$(curl https://ghcr.io/token\?scope\="repository:k8s-at-home/lidarr:pull" | jq --raw-output '.[]')
|
||||
version=$(curl -H "Authorization: Bearer ${TOKEN}" https://ghcr.io/v2/k8s-at-home/lidarr/tags/list | jq --raw-output '.tags[]' | grep -v latest | grep -v buildcache | tail -n1)
|
||||
version="${version#*v}"
|
||||
version="${version#*release-}"
|
||||
echo "${version}"
|
||||
@@ -0,0 +1,33 @@
|
||||
# hadolint ignore=DL3007
|
||||
ARG VERSION
|
||||
|
||||
FROM ghcr.io/k8s-at-home/nzbget:v${VERSION}
|
||||
|
||||
|
||||
ARG TARGETPLATFORM
|
||||
|
||||
USER root
|
||||
|
||||
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
|
||||
|
||||
# hadolint ignore=DL3008,DL3015,SC2086
|
||||
RUN \
|
||||
usermod -l apps kah \
|
||||
&& \
|
||||
groupmod -n apps kah \
|
||||
&& chown -R apps:apps /config \
|
||||
&& rm -rf /app/package_info \
|
||||
&& \
|
||||
printf "UpdateMethod=docker\nPackageVersion=%s\nPackageAuthor=[TrueCharts Project](https://truecharts.org)" "${VERSION}" > /app/package_info
|
||||
|
||||
|
||||
USER apps
|
||||
|
||||
EXPOSE 6789
|
||||
|
||||
CMD ["/entrypoint.sh"]
|
||||
|
||||
LABEL "maintainer"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "authors"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "org.opencontainers.image.source"="https://github.com/truecharts/apps/tree/master/.containers/apps/nzbget"
|
||||
LABEL "org.opencontainers.image.documentation "="https://truecharts.org"
|
||||
@@ -0,0 +1 @@
|
||||
21.0
|
||||
@@ -0,0 +1,18 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
#shellcheck disable=SC1091
|
||||
source "/shim/umask.sh"
|
||||
source "/shim/vpn.sh"
|
||||
|
||||
if [[ ! -f "/config/nzbget.conf" ]]; then
|
||||
cp /app/nzbget.conf /config/nzbget.conf
|
||||
sed -i \
|
||||
-e "s#\\(MainDir=\\).*#\\1/config/downloads#g" \
|
||||
-e "s#\\(QueueDir=\\).*#\\1/config/queue#g" \
|
||||
-e "s#\\(LockFile=\\).*#\\1/config/nzbget.lock#g" \
|
||||
-e "s#\\(LogFile=\\).*#\\1/config/nzbget.log#g" \
|
||||
-e "s#\\(ShellOverride=\\).*#\\1.py=/usr/bin/python3#g" \
|
||||
"/config/nzbget.conf"
|
||||
fi
|
||||
|
||||
exec /app/nzbget --server --option "OutputMode=log" --configfile /config/nzbget.conf ${EXTRA_ARGS}
|
||||
@@ -0,0 +1,14 @@
|
||||
---
|
||||
process:
|
||||
nzbget:
|
||||
running: true
|
||||
|
||||
port:
|
||||
tcp:6789:
|
||||
listening: true
|
||||
|
||||
http:
|
||||
http://localhost:6789:
|
||||
status: 200
|
||||
body:
|
||||
- '<title>NZBGet</title>'
|
||||
@@ -0,0 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
TOKEN=$(curl https://ghcr.io/token\?scope\="repository:k8s-at-home/nzbget:pull" | jq --raw-output '.[]')
|
||||
version=$(curl -H "Authorization: Bearer ${TOKEN}" https://ghcr.io/v2/k8s-at-home/nzbget/tags/list | jq --raw-output '.tags[]' | grep -v latest | grep -v buildcache | tail -n1)
|
||||
version="${version#*v}"
|
||||
version="${version#*release-}"
|
||||
echo "${version}"
|
||||
@@ -0,0 +1,33 @@
|
||||
# hadolint ignore=DL3007
|
||||
ARG VERSION
|
||||
|
||||
FROM ghcr.io/k8s-at-home/nzbhydra2:v${VERSION}
|
||||
|
||||
|
||||
ARG TARGETPLATFORM
|
||||
|
||||
USER root
|
||||
|
||||
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
|
||||
|
||||
# hadolint ignore=DL3008,DL3015,SC2086
|
||||
RUN \
|
||||
usermod -l apps kah \
|
||||
&& \
|
||||
groupmod -n apps kah \
|
||||
&& chown -R apps:apps /config \
|
||||
&& rm -rf /app/package_info \
|
||||
&& \
|
||||
printf "UpdateMethod=docker\nPackageVersion=%s\nPackageAuthor=[TrueCharts Project](https://truecharts.org)" "${VERSION}" > /app/package_info
|
||||
|
||||
|
||||
USER apps
|
||||
|
||||
EXPOSE 5076
|
||||
|
||||
CMD ["/entrypoint.sh"]
|
||||
|
||||
LABEL "maintainer"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "authors"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "org.opencontainers.image.source"="https://github.com/truecharts/apps/tree/master/.containers/apps/nzbhydra2"
|
||||
LABEL "org.opencontainers.image.documentation "="https://truecharts.org"
|
||||
@@ -0,0 +1 @@
|
||||
3.14.2
|
||||
@@ -0,0 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
#shellcheck disable=SC1091
|
||||
source "/shim/umask.sh"
|
||||
source "/shim/vpn.sh"
|
||||
|
||||
exec /usr/bin/python3 /app/nzbhydra2wrapperPy3.py --nobrowser --datafolder /config ${EXTRA_ARGS}
|
||||
@@ -0,0 +1,15 @@
|
||||
---
|
||||
process:
|
||||
python3:
|
||||
running: true
|
||||
|
||||
port:
|
||||
tcp:5076:
|
||||
listening: true
|
||||
|
||||
# # TODO fix this test
|
||||
# http:
|
||||
# http://localhost:5076:
|
||||
# status: 200
|
||||
# body:
|
||||
# - '<title>NZBHydra2</title>'
|
||||
@@ -0,0 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
TOKEN=$(curl https://ghcr.io/token\?scope\="repository:k8s-at-home/nzbhydra2:pull" | jq --raw-output '.[]')
|
||||
version=$(curl -H "Authorization: Bearer ${TOKEN}" https://ghcr.io/v2/k8s-at-home/nzbhydra2/tags/list | jq --raw-output '.tags[]' | grep -v latest | grep -v buildcache | tail -n1)
|
||||
version="${version#*v}"
|
||||
version="${version#*release-}"
|
||||
echo "${version}"
|
||||
@@ -0,0 +1 @@
|
||||
focal-20210416
|
||||
@@ -0,0 +1,54 @@
|
||||
# hadolint ignore=DL3007
|
||||
FROM ghcr.io/truecharts/ubuntu:latest
|
||||
|
||||
|
||||
ARG TARGETPLATFORM
|
||||
ARG VERSION
|
||||
|
||||
USER root
|
||||
|
||||
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
|
||||
|
||||
# hadolint ignore=DL3008,DL3015,SC2086,SC2155
|
||||
RUN \
|
||||
apt-get -qq update \
|
||||
&& \
|
||||
apt-get -qq install -y \
|
||||
libicu66 \
|
||||
jq \
|
||||
&& \
|
||||
case "${TARGETPLATFORM}" in \
|
||||
'linux/amd64') export ARCH='linux-x64' ;; \
|
||||
esac \
|
||||
&& \
|
||||
export URL=$(curl -sX GET https://api.github.com/repos/Ombi-app/Ombi/releases | \
|
||||
jq -r '.[] | select(.tag_name | contains(env.VERSION)) | .assets[] | select(.browser_download_url | contains(env.ARCH)) | .browser_download_url') \
|
||||
&& curl -fsSL -o /tmp/ombi.tgz "${URL}" \
|
||||
&& tar ixzf /tmp/ombi.tgz -C /app \
|
||||
&& \
|
||||
rm -rf \
|
||||
/tmp/ombi.tgz \
|
||||
&& printf "UpdateMethod=docker\nPackageVersion=%s\nPackageAuthor=[TrueCharts Project](https://truecharts.org)" "${VERSION}" > /app/package_info \
|
||||
&& apt-get remove -y \
|
||||
jq \
|
||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \
|
||||
&& apt-get autoremove -y \
|
||||
&& apt-get clean \
|
||||
&& \
|
||||
rm -rf \
|
||||
/tmp/* \
|
||||
/var/lib/apt/lists/* \
|
||||
/var/tmp/ \
|
||||
&& chmod -R u=rwX,go=rX /app \
|
||||
&& printf "umask %d" "${UMASK}" >> /etc/bash.bashrc \
|
||||
&& update-ca-certificates
|
||||
|
||||
USER apps
|
||||
|
||||
EXPOSE 3579
|
||||
|
||||
COPY ./.containers/apps/ombi/entrypoint.sh /entrypoint.sh
|
||||
CMD ["/entrypoint.sh"]
|
||||
|
||||
LABEL "maintainer"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "org.opencontainers.image.source"="https://github.com/truecharts/apps"
|
||||
@@ -0,0 +1 @@
|
||||
4.0.1402
|
||||
@@ -0,0 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
#shellcheck disable=SC1091
|
||||
source "/shim/umask.sh"
|
||||
source "/shim/vpn.sh"
|
||||
|
||||
exec /app/Ombi --host http://0.0.0.0:3579 --storage /config ${EXTRA_ARGS}
|
||||
@@ -0,0 +1,2 @@
|
||||
#!/usr/bin/env bash
|
||||
cat "./.containers/base/ubuntu/VERSION"
|
||||
@@ -0,0 +1,6 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
version=$(curl -sX GET "https://api.github.com/repos/Ombi-app/Ombi/releases" | jq --raw-output '.[0].tag_name')
|
||||
version="${version#*v}"
|
||||
version="${version#*release-}"
|
||||
printf "%s" "${version}"
|
||||
@@ -0,0 +1,33 @@
|
||||
# hadolint ignore=DL3007
|
||||
ARG VERSION
|
||||
|
||||
FROM ghcr.io/k8s-at-home/plex:v${VERSION}
|
||||
|
||||
|
||||
ARG TARGETPLATFORM
|
||||
|
||||
USER root
|
||||
|
||||
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
|
||||
|
||||
# hadolint ignore=DL3008,DL3015,SC2086
|
||||
RUN \
|
||||
usermod -l apps kah \
|
||||
&& \
|
||||
groupmod -n apps kah \
|
||||
&& chown -R apps:apps /config \
|
||||
&& rm -rf /app/package_info \
|
||||
&& \
|
||||
printf "UpdateMethod=docker\nPackageVersion=%s\nPackageAuthor=[TrueCharts Project](https://truecharts.org)" "${VERSION}" > /app/package_info
|
||||
|
||||
|
||||
USER apps
|
||||
|
||||
EXPOSE 32400/tcp 1900/tcp 5353/udp 8324/tcp 32410/udp 32413/udp 32414/udp 32469/udp
|
||||
|
||||
CMD ["/entrypoint.sh"]
|
||||
|
||||
LABEL "maintainer"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "authors"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "org.opencontainers.image.source"="https://github.com/truecharts/apps/tree/master/.containers/apps/plex"
|
||||
LABEL "org.opencontainers.image.documentation "="https://truecharts.org"
|
||||
@@ -0,0 +1,3 @@
|
||||
# plex-media-server
|
||||
|
||||
**Do not use this image, this is currently for testing a new plex chart and using this container image**
|
||||
@@ -0,0 +1 @@
|
||||
1.23.1.4602-280ab6053
|
||||
@@ -0,0 +1,13 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
#shellcheck disable=SC1091
|
||||
source "/shim/umask.sh"
|
||||
source "/shim/vpn.sh"
|
||||
source "/shim/plex-preferences.sh"
|
||||
|
||||
#shellcheck disable=SC2155
|
||||
export PLEX_MEDIA_SERVER_INFO_MODEL=$(uname -m)
|
||||
#shellcheck disable=SC2155
|
||||
export PLEX_MEDIA_SERVER_INFO_PLATFORM_VERSION=$(uname -r)
|
||||
|
||||
exec /usr/lib/plexmediaserver/Plex\ Media\ Server
|
||||
@@ -0,0 +1,15 @@
|
||||
---
|
||||
process:
|
||||
Plex Media Serv:
|
||||
running: true
|
||||
|
||||
port:
|
||||
tcp6:32400:
|
||||
listening: true
|
||||
|
||||
# # TODO fix this test
|
||||
# http:
|
||||
# http://localhost:32400:
|
||||
# status: 200
|
||||
# body:
|
||||
# - '<title>Plex</title>'
|
||||
@@ -0,0 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
TOKEN=$(curl https://ghcr.io/token\?scope\="repository:k8s-at-home/plex:pull" | jq --raw-output '.[]')
|
||||
version=$(curl -H "Authorization: Bearer ${TOKEN}" https://ghcr.io/v2/k8s-at-home/plex/tags/list | jq --raw-output '.tags[]' | grep -v latest | grep -v buildcache | tail -n1)
|
||||
version="${version#*v}"
|
||||
version="${version#*release-}"
|
||||
echo "${version}"
|
||||
@@ -0,0 +1,94 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# This file is based off of the official 40-plex-first-run
|
||||
# Here: https://github.com/plexinc/pms-docker/blob/master/root/etc/cont-init.d/40-plex-first-run
|
||||
# It should live in /etc/cont-init.d/
|
||||
|
||||
# If we are debugging, enable trace
|
||||
if [ "${DEBUG,,}" = "true" ]; then
|
||||
set -x
|
||||
fi
|
||||
|
||||
function getPref {
|
||||
local key="${1}"
|
||||
|
||||
xmlstarlet sel -T -t -m "/Preferences" -v "@${key}" -n "${prefFile}"
|
||||
}
|
||||
|
||||
function setPref {
|
||||
local key="${1}"
|
||||
local value="${2}"
|
||||
|
||||
count="$(xmlstarlet sel -t -v "count(/Preferences/@${key})" "${prefFile}")"
|
||||
count=$(($count + 0))
|
||||
if [[ $count > 0 ]]; then
|
||||
xmlstarlet ed --inplace --update "/Preferences/@${key}" -v "${value}" "${prefFile}"
|
||||
else
|
||||
xmlstarlet ed --inplace --insert "/Preferences" --type attr -n "${key}" -v "${value}" "${prefFile}"
|
||||
fi
|
||||
}
|
||||
|
||||
prefFile="${PLEX_MEDIA_SERVER_APPLICATION_SUPPORT_DIR}/Plex Media Server/Preferences.xml"
|
||||
|
||||
# Setup Server's client identifier
|
||||
serial="$(getPref "MachineIdentifier")"
|
||||
if [ -z "${serial}" ]; then
|
||||
serial="$(uuidgen)"
|
||||
setPref "MachineIdentifier" "${serial}"
|
||||
fi
|
||||
clientId="$(getPref "ProcessedMachineIdentifier")"
|
||||
if [ -z "${clientId}" ]; then
|
||||
clientId="$(echo -n "${serial}- Plex Media Server" | sha1sum | cut -b 1-40)"
|
||||
setPref "ProcessedMachineIdentifier" "${clientId}"
|
||||
fi
|
||||
|
||||
# Get server token and only turn claim token into server token if we have former but not latter.
|
||||
token="$(getPref "PlexOnlineToken")"
|
||||
if [ ! -z "${PLEX_CLAIM}" ] && [ -z "${token}" ]; then
|
||||
echo "Attempting to obtain server token from claim token"
|
||||
loginInfo="$(curl -X POST \
|
||||
-H 'X-Plex-Client-Identifier: '${clientId} \
|
||||
-H 'X-Plex-Product: Plex Media Server'\
|
||||
-H 'X-Plex-Version: 1.1' \
|
||||
-H 'X-Plex-Provides: server' \
|
||||
-H 'X-Plex-Platform: Linux' \
|
||||
-H 'X-Plex-Platform-Version: 1.0' \
|
||||
-H 'X-Plex-Device-Name: PlexMediaServer' \
|
||||
-H 'X-Plex-Device: Linux' \
|
||||
"https://plex.tv/api/claim/exchange?token=${PLEX_CLAIM}")"
|
||||
token="$(echo "$loginInfo" | sed -n 's/.*<authentication-token>\(.*\)<\/authentication-token>.*/\1/p')"
|
||||
|
||||
if [ "$token" ]; then
|
||||
echo "Token obtained successfully"
|
||||
setPref "PlexOnlineToken" "${token}"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -n "${ADVERTISE_IP}" ]; then
|
||||
setPref "customConnections" "${ADVERTISE_IP}"
|
||||
fi
|
||||
|
||||
if [ -n "${ALLOWED_NETWORKS}" ]; then
|
||||
setPref "allowedNetworks" "${ALLOWED_NETWORKS}"
|
||||
fi
|
||||
|
||||
# Set transcoder temp if not yet set
|
||||
if [ -z "$(getPref "TranscoderTempDirectory")" ]; then
|
||||
setPref "TranscoderTempDirectory" "/transcode"
|
||||
fi
|
||||
|
||||
# Parse list of all exported variables that start with PLEX_PREFERENCE_
|
||||
# The format of which is PLEX_PREFERENCE_<SOMETHING>="Key=Value"
|
||||
# Where Key is the EXACT key to use in the Plex Preference file
|
||||
# And Value is the EXACT value to use in the Plex Preference file for that key.
|
||||
# Please note it looks like many of the key's are camelCase in some fashion.
|
||||
# Additionally there are likely some preferences where environment variable injection
|
||||
# doesn't really work for.
|
||||
for var in "${!PLEX_PREFERENCE_@}"; do
|
||||
value="${!var}"
|
||||
PreferenceValue="${value#*=}"
|
||||
PreferenceKey="${value%=*}"
|
||||
setPref "${PreferenceKey}" "${PreferenceValue}"
|
||||
done
|
||||
|
||||
echo "Plex Media Server preferences updated"
|
||||
@@ -0,0 +1,33 @@
|
||||
# hadolint ignore=DL3007
|
||||
ARG VERSION
|
||||
|
||||
FROM ghcr.io/k8s-at-home/qbittorrent:v${VERSION}
|
||||
|
||||
|
||||
ARG TARGETPLATFORM
|
||||
|
||||
USER root
|
||||
|
||||
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
|
||||
|
||||
# hadolint ignore=DL3008,DL3015,SC2086
|
||||
RUN \
|
||||
usermod -l apps kah \
|
||||
&& \
|
||||
groupmod -n apps kah \
|
||||
&& chown -R apps:apps /config \
|
||||
&& rm -rf /app/package_info \
|
||||
&& \
|
||||
printf "UpdateMethod=docker\nPackageVersion=%s\nPackageAuthor=[TrueCharts Project](https://truecharts.org)" "${VERSION}" > /app/package_info
|
||||
|
||||
|
||||
USER apps
|
||||
|
||||
EXPOSE 6881 6881/udp ${WEBUI_PORT}
|
||||
|
||||
CMD ["/entrypoint.sh"]
|
||||
|
||||
LABEL "maintainer"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "authors"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "org.opencontainers.image.source"="https://github.com/truecharts/apps/tree/master/.containers/apps/qbittorrent"
|
||||
LABEL "org.opencontainers.image.documentation "="https://truecharts.org"
|
||||
@@ -0,0 +1 @@
|
||||
4.3.5
|
||||
@@ -0,0 +1,12 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
#shellcheck disable=SC1091
|
||||
source "/shim/umask.sh"
|
||||
source "/shim/vpn.sh"
|
||||
|
||||
if [[ ! -f "/config/qBittorrent/qBittorrent.conf" ]]; then
|
||||
mkdir -p /config/qBittorrent
|
||||
cp /app/qBittorrent.conf /config/qBittorrent/qBittorrent.conf
|
||||
fi
|
||||
|
||||
exec /app/qbittorrent-nox --webui-port="${WEBUI_PORT}" ${EXTRA_ARGS}
|
||||
@@ -0,0 +1,14 @@
|
||||
---
|
||||
process:
|
||||
qbittorrent-nox:
|
||||
running: true
|
||||
|
||||
port:
|
||||
tcp6:8080:
|
||||
listening: true
|
||||
|
||||
http:
|
||||
http://localhost:8080:
|
||||
status: 200
|
||||
body:
|
||||
- '<title>qBittorrent Web UI</title>'
|
||||
@@ -0,0 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
TOKEN=$(curl https://ghcr.io/token\?scope\="repository:k8s-at-home/qbittorrent:pull" | jq --raw-output '.[]')
|
||||
version=$(curl -H "Authorization: Bearer ${TOKEN}" https://ghcr.io/v2/k8s-at-home/qbittorrent/tags/list | jq --raw-output '.tags[]' | grep -v latest | grep -v buildcache | tail -n1)
|
||||
version="${version#*v}"
|
||||
version="${version#*release-}"
|
||||
echo "${version}"
|
||||
@@ -0,0 +1,7 @@
|
||||
WebUI\Address=*
|
||||
WebUI\ServerDomains=*
|
||||
WebUI\HostHeaderValidation=false
|
||||
WebUI\UseUPnP=false
|
||||
WebUI\LocalHostAuth=false
|
||||
Downloads\SavePath=/downloads/complete
|
||||
Downloads\TempPath=/downloads/incomplete
|
||||
@@ -0,0 +1,33 @@
|
||||
# hadolint ignore=DL3007
|
||||
ARG VERSION
|
||||
|
||||
FROM ghcr.io/k8s-at-home/radarr:v${VERSION}
|
||||
|
||||
|
||||
ARG TARGETPLATFORM
|
||||
|
||||
USER root
|
||||
|
||||
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
|
||||
|
||||
# hadolint ignore=DL3008,DL3015,SC2086
|
||||
RUN \
|
||||
usermod -l apps kah \
|
||||
&& \
|
||||
groupmod -n apps kah \
|
||||
&& chown -R apps:apps /config \
|
||||
&& rm -rf /app/package_info \
|
||||
&& \
|
||||
printf "UpdateMethod=docker\nPackageVersion=%s\nPackageAuthor=[TrueCharts Project](https://truecharts.org)" "${VERSION}" > /app/package_info
|
||||
|
||||
|
||||
USER apps
|
||||
|
||||
EXPOSE 7878
|
||||
|
||||
CMD ["/entrypoint.sh"]
|
||||
|
||||
LABEL "maintainer"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "authors"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "org.opencontainers.image.source"="https://github.com/truecharts/apps/tree/master/.containers/apps/radarr"
|
||||
LABEL "org.opencontainers.image.documentation "="https://truecharts.org"
|
||||
@@ -0,0 +1 @@
|
||||
3.2.1.5070
|
||||
@@ -0,0 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
#shellcheck disable=SC1091
|
||||
source "/shim/umask.sh"
|
||||
source "/shim/vpn.sh"
|
||||
|
||||
exec /app/Radarr --nobrowser --data=/config ${EXTRA_ARGS}
|
||||
@@ -0,0 +1,14 @@
|
||||
---
|
||||
process:
|
||||
Radarr:
|
||||
running: true
|
||||
|
||||
port:
|
||||
tcp6:7878:
|
||||
listening: true
|
||||
|
||||
http:
|
||||
http://localhost:7878:
|
||||
status: 200
|
||||
body:
|
||||
- '<title>Radarr</title>'
|
||||
@@ -0,0 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
TOKEN=$(curl https://ghcr.io/token\?scope\="repository:k8s-at-home/radarr:pull" | jq --raw-output '.[]')
|
||||
version=$(curl -H "Authorization: Bearer ${TOKEN}" https://ghcr.io/v2/k8s-at-home/radarr/tags/list | jq --raw-output '.tags[]' | grep -v latest | grep -v buildcache | tail -n1)
|
||||
version="${version#*v}"
|
||||
version="${version#*release-}"
|
||||
echo "${version}"
|
||||
@@ -0,0 +1,33 @@
|
||||
# hadolint ignore=DL3007
|
||||
ARG VERSION
|
||||
|
||||
FROM ghcr.io/k8s-at-home/readarr:v${VERSION}
|
||||
|
||||
|
||||
ARG TARGETPLATFORM
|
||||
|
||||
USER root
|
||||
|
||||
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
|
||||
|
||||
# hadolint ignore=DL3008,DL3015,SC2086
|
||||
RUN \
|
||||
usermod -l apps kah \
|
||||
&& \
|
||||
groupmod -n apps kah \
|
||||
&& chown -R apps:apps /config \
|
||||
&& rm -rf /app/package_info \
|
||||
&& \
|
||||
printf "UpdateMethod=docker\nPackageVersion=%s\nPackageAuthor=[TrueCharts Project](https://truecharts.org)" "${VERSION}" > /app/package_info
|
||||
|
||||
|
||||
USER apps
|
||||
|
||||
EXPOSE 8787
|
||||
|
||||
CMD ["/entrypoint.sh"]
|
||||
|
||||
LABEL "maintainer"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "authors"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "org.opencontainers.image.source"="https://github.com/truecharts/apps/tree/master/.containers/apps/readarr"
|
||||
LABEL "org.opencontainers.image.documentation "="https://truecharts.org"
|
||||
@@ -0,0 +1 @@
|
||||
0.1.0.715
|
||||
@@ -0,0 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
#shellcheck disable=SC1091
|
||||
source "/shim/umask.sh"
|
||||
source "/shim/vpn.sh"
|
||||
|
||||
exec /app/Readarr --nobrowser --data=/config ${EXTRA_ARGS}
|
||||
@@ -0,0 +1,14 @@
|
||||
---
|
||||
process:
|
||||
Readarr:
|
||||
running: true
|
||||
|
||||
port:
|
||||
tcp6:8787:
|
||||
listening: true
|
||||
|
||||
http:
|
||||
http://localhost:8787:
|
||||
status: 200
|
||||
body:
|
||||
- '<title>Readarr</title>'
|
||||
@@ -0,0 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
TOKEN=$(curl https://ghcr.io/token\?scope\="repository:k8s-at-home/readarr:pull" | jq --raw-output '.[]')
|
||||
version=$(curl -H "Authorization: Bearer ${TOKEN}" https://ghcr.io/v2/k8s-at-home/readarr/tags/list | jq --raw-output '.tags[]' | grep -v latest | grep -v buildcache | tail -n1)
|
||||
version="${version#*v}"
|
||||
version="${version#*release-}"
|
||||
echo "${version}"
|
||||
@@ -0,0 +1,33 @@
|
||||
# hadolint ignore=DL3007
|
||||
ARG VERSION
|
||||
|
||||
FROM ghcr.io/k8s-at-home/sabnzbd:v${VERSION}
|
||||
|
||||
|
||||
ARG TARGETPLATFORM
|
||||
|
||||
USER root
|
||||
|
||||
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
|
||||
|
||||
# hadolint ignore=DL3008,DL3015,SC2086
|
||||
RUN \
|
||||
usermod -l apps kah \
|
||||
&& \
|
||||
groupmod -n apps kah \
|
||||
&& chown -R apps:apps /config \
|
||||
&& rm -rf /app/package_info \
|
||||
&& \
|
||||
printf "UpdateMethod=docker\nPackageVersion=%s\nPackageAuthor=[TrueCharts Project](https://truecharts.org)" "${VERSION}" > /app/package_info
|
||||
|
||||
|
||||
USER apps
|
||||
|
||||
EXPOSE 8080
|
||||
|
||||
CMD ["/entrypoint.sh"]
|
||||
|
||||
LABEL "maintainer"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "authors"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "org.opencontainers.image.source"="https://github.com/truecharts/apps/tree/master/.containers/apps/sabnzbd"
|
||||
LABEL "org.opencontainers.image.documentation "="https://truecharts.org"
|
||||
@@ -0,0 +1 @@
|
||||
3.2.1
|
||||
@@ -0,0 +1,24 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
#shellcheck disable=SC1091
|
||||
source "/shim/umask.sh"
|
||||
source "/shim/vpn.sh"
|
||||
|
||||
if [[ ! -f "/config/sabnzbd.ini" ]]; then
|
||||
printf "Copying over default configuration ... "
|
||||
mkdir -p /config/sabnzbd
|
||||
cp /app/sabnzbd.ini /config/sabnzbd.ini
|
||||
|
||||
printf "Creating api keys ... "
|
||||
api_key=$(cat /dev/urandom | tr -dc 'a-z0-9' | fold -w 32 | head -n 1)
|
||||
nzb_key=$(cat /dev/urandom | tr -dc 'a-z0-9' | fold -w 32 | head -n 1)
|
||||
sed -i -e "s/^api_key *=.*$/api_key = ${api_key}/g" /config/sabnzbd.ini
|
||||
sed -i -e "s/^nzb_key *=.*$/nzb_key = ${nzb_key}/g" /config/sabnzbd.ini
|
||||
fi
|
||||
|
||||
if [[ -n ${HOST_WHITELIST_ENTRIES} ]]; then
|
||||
printf "Updating host_whitelist setting ... "
|
||||
sed -i -e "s/^host_whitelist *=.*$/host_whitelist = ${HOSTNAME}, ${HOST_WHITELIST_ENTRIES}/g" /config/sabnzbd.ini
|
||||
fi
|
||||
|
||||
exec /usr/bin/python3 /app/SABnzbd.py --browser 0 --server 0.0.0.0:8080 --config-file /config/sabnzbd.ini ${EXTRA_ARGS}
|
||||
@@ -0,0 +1,14 @@
|
||||
---
|
||||
process:
|
||||
python3:
|
||||
running: true
|
||||
|
||||
port:
|
||||
tcp:8080:
|
||||
listening: true
|
||||
|
||||
http:
|
||||
http://localhost:8080/sabnzbd:
|
||||
status: 200
|
||||
body:
|
||||
- '<title>SABnzbd Quick-Start Wizard</title>'
|
||||
@@ -0,0 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
TOKEN=$(curl https://ghcr.io/token\?scope\="repository:k8s-at-home/sabnzbd:pull" | jq --raw-output '.[]')
|
||||
version=$(curl -H "Authorization: Bearer ${TOKEN}" https://ghcr.io/v2/k8s-at-home/sabnzbd/tags/list | jq --raw-output '.tags[]' | grep -v latest | grep -v buildcache | tail -n1)
|
||||
version="${version#*v}"
|
||||
version="${version#*release-}"
|
||||
echo "${version}"
|
||||
@@ -0,0 +1,304 @@
|
||||
__version__ = 19
|
||||
__encoding__ = utf-8
|
||||
[misc]
|
||||
pre_script = None
|
||||
queue_complete = ""
|
||||
queue_complete_pers = 0
|
||||
bandwidth_perc = 100
|
||||
refresh_rate = 0
|
||||
interface_settings = ""
|
||||
queue_limit = 20
|
||||
config_lock = 0
|
||||
sched_converted = 0
|
||||
notified_new_skin = 0
|
||||
direct_unpack_tested = 0
|
||||
check_new_rel = 1
|
||||
auto_browser = 0
|
||||
language = en
|
||||
enable_https_verification = 1
|
||||
host = 0.0.0.0
|
||||
port = 8080
|
||||
https_port = ""
|
||||
username = ""
|
||||
password = ""
|
||||
bandwidth_max = ""
|
||||
cache_limit = ""
|
||||
web_dir = Glitter
|
||||
web_color = ""
|
||||
https_cert = server.cert
|
||||
https_key = server.key
|
||||
https_chain = ""
|
||||
enable_https = 0
|
||||
inet_exposure = 0
|
||||
local_ranges = ,
|
||||
api_key = ""
|
||||
nzb_key = ""
|
||||
permissions = ""
|
||||
download_dir = Downloads/incomplete
|
||||
download_free = ""
|
||||
complete_dir = Downloads/complete
|
||||
complete_free = ""
|
||||
fulldisk_autoresume = 0
|
||||
script_dir = ""
|
||||
nzb_backup_dir = ""
|
||||
admin_dir = admin
|
||||
dirscan_dir = ""
|
||||
dirscan_speed = 5
|
||||
password_file = ""
|
||||
log_dir = logs
|
||||
max_art_tries = 3
|
||||
load_balancing = 2
|
||||
top_only = 0
|
||||
sfv_check = 1
|
||||
quick_check_ext_ignore = nfo, sfv, srr
|
||||
script_can_fail = 0
|
||||
enable_recursive = 1
|
||||
flat_unpack = 0
|
||||
par_option = ""
|
||||
pre_check = 0
|
||||
nice = ""
|
||||
win_process_prio = 3
|
||||
ionice = ""
|
||||
fail_hopeless_jobs = 1
|
||||
fast_fail = 1
|
||||
auto_disconnect = 1
|
||||
no_dupes = 0
|
||||
no_series_dupes = 0
|
||||
series_propercheck = 1
|
||||
pause_on_pwrar = 1
|
||||
ignore_samples = 0
|
||||
deobfuscate_final_filenames = 0
|
||||
auto_sort = ""
|
||||
direct_unpack = 0
|
||||
direct_unpack_threads = 3
|
||||
propagation_delay = 0
|
||||
folder_rename = 1
|
||||
replace_spaces = 0
|
||||
replace_dots = 0
|
||||
safe_postproc = 1
|
||||
pause_on_post_processing = 0
|
||||
sanitize_safe = 0
|
||||
cleanup_list = ,
|
||||
unwanted_extensions = ,
|
||||
action_on_unwanted_extensions = 0
|
||||
new_nzb_on_failure = 0
|
||||
history_retention = 0
|
||||
enable_meta = 1
|
||||
quota_size = ""
|
||||
quota_day = ""
|
||||
quota_resume = 0
|
||||
quota_period = m
|
||||
rating_enable = 0
|
||||
rating_host = ""
|
||||
rating_api_key = ""
|
||||
rating_filter_enable = 0
|
||||
rating_filter_abort_audio = 0
|
||||
rating_filter_abort_video = 0
|
||||
rating_filter_abort_encrypted = 0
|
||||
rating_filter_abort_encrypted_confirm = 0
|
||||
rating_filter_abort_spam = 0
|
||||
rating_filter_abort_spam_confirm = 0
|
||||
rating_filter_abort_downvoted = 0
|
||||
rating_filter_abort_keywords = ""
|
||||
rating_filter_pause_audio = 0
|
||||
rating_filter_pause_video = 0
|
||||
rating_filter_pause_encrypted = 0
|
||||
rating_filter_pause_encrypted_confirm = 0
|
||||
rating_filter_pause_spam = 0
|
||||
rating_filter_pause_spam_confirm = 0
|
||||
rating_filter_pause_downvoted = 0
|
||||
rating_filter_pause_keywords = ""
|
||||
enable_tv_sorting = 0
|
||||
tv_sort_string = ""
|
||||
tv_sort_countries = 1
|
||||
tv_categories = ""
|
||||
enable_movie_sorting = 0
|
||||
movie_sort_string = ""
|
||||
movie_sort_extra = -cd%1
|
||||
movie_extra_folder = 0
|
||||
movie_categories = movies,
|
||||
enable_date_sorting = 0
|
||||
date_sort_string = ""
|
||||
date_categories = tv,
|
||||
schedlines = ,
|
||||
rss_rate = 60
|
||||
ampm = 0
|
||||
replace_illegal = 1
|
||||
start_paused = 0
|
||||
enable_all_par = 0
|
||||
enable_par_cleanup = 1
|
||||
enable_unrar = 1
|
||||
enable_unzip = 1
|
||||
enable_7zip = 1
|
||||
enable_filejoin = 1
|
||||
enable_tsjoin = 1
|
||||
overwrite_files = 0
|
||||
ignore_unrar_dates = 0
|
||||
backup_for_duplicates = 1
|
||||
empty_postproc = 0
|
||||
wait_for_dfolder = 0
|
||||
rss_filenames = 0
|
||||
api_logging = 1
|
||||
html_login = 1
|
||||
osx_menu = 1
|
||||
osx_speed = 1
|
||||
warn_dupl_jobs = 1
|
||||
helpfull_warnings = 1
|
||||
keep_awake = 1
|
||||
win_menu = 1
|
||||
allow_incomplete_nzb = 0
|
||||
enable_broadcast = 1
|
||||
max_art_opt = 0
|
||||
ipv6_hosting = 0
|
||||
fixed_ports = 1
|
||||
api_warnings = 1
|
||||
disable_api_key = 0
|
||||
no_penalties = 0
|
||||
x_frame_options = 1
|
||||
require_modern_tls = 0
|
||||
num_decoders = 3
|
||||
rss_odd_titles = nzbindex.nl/, nzbindex.com/, nzbclub.com/
|
||||
req_completion_rate = 100.2
|
||||
selftest_host = self-test.sabnzbd.org
|
||||
movie_rename_limit = 100M
|
||||
size_limit = 0
|
||||
show_sysload = 2
|
||||
history_limit = 10
|
||||
wait_ext_drive = 5
|
||||
max_foldername_length = 246
|
||||
nomedia_marker = ""
|
||||
ipv6_servers = 1
|
||||
url_base = /sabnzbd
|
||||
host_whitelist = 2b4152ea8457,
|
||||
max_url_retries = 10
|
||||
downloader_sleep_time = 10
|
||||
ssdp_broadcast_interval = 15
|
||||
email_server = ""
|
||||
email_to = ,
|
||||
email_from = ""
|
||||
email_account = ""
|
||||
email_pwd = ""
|
||||
email_endjob = 0
|
||||
email_full = 0
|
||||
email_dir = ""
|
||||
email_rss = 0
|
||||
email_cats = *,
|
||||
[logging]
|
||||
log_level = 1
|
||||
max_log_size = 5242880
|
||||
log_backups = 5
|
||||
[ncenter]
|
||||
ncenter_enable = 0
|
||||
ncenter_cats = *,
|
||||
ncenter_prio_startup = 1
|
||||
ncenter_prio_download = 0
|
||||
ncenter_prio_pause_resume = 0
|
||||
ncenter_prio_pp = 0
|
||||
ncenter_prio_complete = 1
|
||||
ncenter_prio_failed = 1
|
||||
ncenter_prio_disk_full = 1
|
||||
ncenter_prio_new_login = 0
|
||||
ncenter_prio_warning = 0
|
||||
ncenter_prio_error = 0
|
||||
ncenter_prio_queue_done = 1
|
||||
ncenter_prio_other = 1
|
||||
[acenter]
|
||||
acenter_enable = 0
|
||||
acenter_cats = *,
|
||||
acenter_prio_startup = 0
|
||||
acenter_prio_download = 0
|
||||
acenter_prio_pause_resume = 0
|
||||
acenter_prio_pp = 0
|
||||
acenter_prio_complete = 1
|
||||
acenter_prio_failed = 1
|
||||
acenter_prio_disk_full = 1
|
||||
acenter_prio_new_login = 0
|
||||
acenter_prio_warning = 0
|
||||
acenter_prio_error = 0
|
||||
acenter_prio_queue_done = 1
|
||||
acenter_prio_other = 1
|
||||
[ntfosd]
|
||||
ntfosd_enable = 1
|
||||
ntfosd_cats = *,
|
||||
ntfosd_prio_startup = 1
|
||||
ntfosd_prio_download = 0
|
||||
ntfosd_prio_pause_resume = 0
|
||||
ntfosd_prio_pp = 0
|
||||
ntfosd_prio_complete = 1
|
||||
ntfosd_prio_failed = 1
|
||||
ntfosd_prio_disk_full = 1
|
||||
ntfosd_prio_new_login = 0
|
||||
ntfosd_prio_warning = 0
|
||||
ntfosd_prio_error = 0
|
||||
ntfosd_prio_queue_done = 1
|
||||
ntfosd_prio_other = 1
|
||||
[prowl]
|
||||
prowl_enable = 0
|
||||
prowl_cats = *,
|
||||
prowl_apikey = ""
|
||||
prowl_prio_startup = -3
|
||||
prowl_prio_download = -3
|
||||
prowl_prio_pause_resume = -3
|
||||
prowl_prio_pp = -3
|
||||
prowl_prio_complete = 0
|
||||
prowl_prio_failed = 1
|
||||
prowl_prio_disk_full = 1
|
||||
prowl_prio_new_login = -3
|
||||
prowl_prio_warning = -3
|
||||
prowl_prio_error = -3
|
||||
prowl_prio_queue_done = 0
|
||||
prowl_prio_other = 0
|
||||
[pushover]
|
||||
pushover_token = ""
|
||||
pushover_userkey = ""
|
||||
pushover_device = ""
|
||||
pushover_emergency_expire = 3600
|
||||
pushover_emergency_retry = 60
|
||||
pushover_enable = 0
|
||||
pushover_cats = *,
|
||||
pushover_prio_startup = -3
|
||||
pushover_prio_download = -2
|
||||
pushover_prio_pause_resume = -2
|
||||
pushover_prio_pp = -3
|
||||
pushover_prio_complete = -1
|
||||
pushover_prio_failed = -1
|
||||
pushover_prio_disk_full = 1
|
||||
pushover_prio_new_login = -3
|
||||
pushover_prio_warning = 1
|
||||
pushover_prio_error = 1
|
||||
pushover_prio_queue_done = -1
|
||||
pushover_prio_other = -1
|
||||
[pushbullet]
|
||||
pushbullet_enable = 0
|
||||
pushbullet_cats = *,
|
||||
pushbullet_apikey = ""
|
||||
pushbullet_device = ""
|
||||
pushbullet_prio_startup = 0
|
||||
pushbullet_prio_download = 0
|
||||
pushbullet_prio_pause_resume = 0
|
||||
pushbullet_prio_pp = 0
|
||||
pushbullet_prio_complete = 1
|
||||
pushbullet_prio_failed = 1
|
||||
pushbullet_prio_disk_full = 1
|
||||
pushbullet_prio_new_login = 0
|
||||
pushbullet_prio_warning = 0
|
||||
pushbullet_prio_error = 0
|
||||
pushbullet_prio_queue_done = 0
|
||||
pushbullet_prio_other = 1
|
||||
[nscript]
|
||||
nscript_enable = 0
|
||||
nscript_cats = *,
|
||||
nscript_script = ""
|
||||
nscript_parameters = ""
|
||||
nscript_prio_startup = 1
|
||||
nscript_prio_download = 0
|
||||
nscript_prio_pause_resume = 0
|
||||
nscript_prio_pp = 0
|
||||
nscript_prio_complete = 1
|
||||
nscript_prio_failed = 1
|
||||
nscript_prio_disk_full = 1
|
||||
nscript_prio_new_login = 0
|
||||
nscript_prio_warning = 0
|
||||
nscript_prio_error = 0
|
||||
nscript_prio_queue_done = 1
|
||||
nscript_prio_other = 1
|
||||
@@ -0,0 +1,33 @@
|
||||
# hadolint ignore=DL3007
|
||||
ARG VERSION
|
||||
|
||||
FROM ghcr.io/k8s-at-home/sonarr:v${VERSION}
|
||||
|
||||
|
||||
ARG TARGETPLATFORM
|
||||
|
||||
USER root
|
||||
|
||||
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
|
||||
|
||||
# hadolint ignore=DL3008,DL3015,SC2086
|
||||
RUN \
|
||||
usermod -l apps kah \
|
||||
&& \
|
||||
groupmod -n apps kah \
|
||||
&& chown -R apps:apps /config \
|
||||
&& rm -rf /app/package_info \
|
||||
&& \
|
||||
printf "UpdateMethod=docker\nPackageVersion=%s\nPackageAuthor=[TrueCharts Project](https://truecharts.org)" "${VERSION}" > /app/package_info
|
||||
|
||||
|
||||
USER apps
|
||||
|
||||
EXPOSE 8989
|
||||
|
||||
CMD ["/entrypoint.sh"]
|
||||
|
||||
LABEL "maintainer"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "authors"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "org.opencontainers.image.source"="https://github.com/truecharts/apps/tree/master/.containers/apps/sonarr"
|
||||
LABEL "org.opencontainers.image.documentation "="https://truecharts.org"
|
||||
@@ -0,0 +1 @@
|
||||
3.0.6.1196
|
||||
@@ -0,0 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
#shellcheck disable=SC1091
|
||||
source "/shim/umask.sh"
|
||||
source "/shim/vpn.sh"
|
||||
|
||||
exec /usr/bin/mono --debug /app/Sonarr.exe --nobrowser --data=/config ${EXTRA_ARGS}
|
||||
@@ -0,0 +1,14 @@
|
||||
---
|
||||
process:
|
||||
mono:
|
||||
running: true
|
||||
|
||||
port:
|
||||
tcp:8989:
|
||||
listening: true
|
||||
|
||||
http:
|
||||
http://localhost:8989:
|
||||
status: 200
|
||||
body:
|
||||
- '<title>Sonarr (Preview)</title>'
|
||||
@@ -0,0 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
TOKEN=$(curl https://ghcr.io/token\?scope\="repository:k8s-at-home/sonarr:pull" | jq --raw-output '.[]')
|
||||
version=$(curl -H "Authorization: Bearer ${TOKEN}" https://ghcr.io/v2/k8s-at-home/sonarr/tags/list | jq --raw-output '.tags[]' | grep -v latest | grep -v buildcache | tail -n1)
|
||||
version="${version#*v}"
|
||||
version="${version#*release-}"
|
||||
echo "${version}"
|
||||
@@ -0,0 +1,33 @@
|
||||
# hadolint ignore=DL3007
|
||||
ARG VERSION
|
||||
|
||||
FROM ghcr.io/k8s-at-home/tautulli:v${VERSION}
|
||||
|
||||
|
||||
ARG TARGETPLATFORM
|
||||
|
||||
USER root
|
||||
|
||||
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
|
||||
|
||||
# hadolint ignore=DL3008,DL3015,SC2086
|
||||
RUN \
|
||||
usermod -l apps kah \
|
||||
&& \
|
||||
groupmod -n apps kah \
|
||||
&& chown -R apps:apps /config \
|
||||
&& rm -rf /app/package_info \
|
||||
&& \
|
||||
printf "UpdateMethod=docker\nPackageVersion=%s\nPackageAuthor=[TrueCharts Project](https://truecharts.org)" "${VERSION}" > /app/package_info
|
||||
|
||||
|
||||
USER apps
|
||||
|
||||
EXPOSE 8181
|
||||
|
||||
CMD ["/entrypoint.sh"]
|
||||
|
||||
LABEL "maintainer"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "authors"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "org.opencontainers.image.source"="https://github.com/truecharts/apps/tree/master/.containers/apps/tautulli"
|
||||
LABEL "org.opencontainers.image.documentation "="https://truecharts.org"
|
||||
@@ -0,0 +1 @@
|
||||
2.7.3
|
||||
@@ -0,0 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
#shellcheck disable=SC1091
|
||||
source "/shim/umask.sh"
|
||||
source "/shim/vpn.sh"
|
||||
|
||||
exec /usr/bin/python3 /app/Tautulli.py --nolaunch --config /config/config.ini --datadir /config ${EXTRA_ARGS}
|
||||
@@ -0,0 +1,15 @@
|
||||
---
|
||||
process:
|
||||
python3:
|
||||
running: true
|
||||
|
||||
port:
|
||||
tcp:8181:
|
||||
listening: true
|
||||
|
||||
# # TODO fix this test
|
||||
# http:
|
||||
# http://localhost:8181:
|
||||
# status: 200
|
||||
# body:
|
||||
# - '<title>Tautulli</title>'
|
||||
@@ -0,0 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
TOKEN=$(curl https://ghcr.io/token\?scope\="repository:k8s-at-home/tautulli:pull" | jq --raw-output '.[]')
|
||||
version=$(curl -H "Authorization: Bearer ${TOKEN}" https://ghcr.io/v2/k8s-at-home/tautulli/tags/list | jq --raw-output '.tags[]' | grep -v latest | grep -v buildcache | tail -n1)
|
||||
version="${version#*v}"
|
||||
version="${version#*release-}"
|
||||
echo "${version}"
|
||||
@@ -0,0 +1,33 @@
|
||||
# hadolint ignore=DL3007
|
||||
ARG VERSION
|
||||
|
||||
FROM ghcr.io/k8s-at-home/transmission:v${VERSION}
|
||||
|
||||
|
||||
ARG TARGETPLATFORM
|
||||
|
||||
USER root
|
||||
|
||||
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
|
||||
|
||||
# hadolint ignore=DL3008,DL3015,SC2086
|
||||
RUN \
|
||||
usermod -l apps kah \
|
||||
&& \
|
||||
groupmod -n apps kah \
|
||||
&& chown -R apps:apps /config \
|
||||
&& rm -rf /app/package_info \
|
||||
&& \
|
||||
printf "UpdateMethod=docker\nPackageVersion=%s\nPackageAuthor=[TrueCharts Project](https://truecharts.org)" "${VERSION}" > /app/package_info
|
||||
|
||||
|
||||
USER apps
|
||||
|
||||
EXPOSE 51413 ${WEBUI_PORT}
|
||||
|
||||
CMD ["/entrypoint.sh"]
|
||||
|
||||
LABEL "maintainer"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "authors"="TrueCharts <info@truecharts.org>"
|
||||
LABEL "org.opencontainers.image.source"="https://github.com/truecharts/apps/tree/master/.containers/apps/transmission"
|
||||
LABEL "org.opencontainers.image.documentation "="https://truecharts.org"
|
||||
@@ -0,0 +1 @@
|
||||
3.00
|
||||
@@ -0,0 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
#shellcheck disable=SC1091
|
||||
source "/shim/umask.sh"
|
||||
source "/shim/vpn.sh"
|
||||
|
||||
exec /app/transmission-daemon --foreground --config-dir /config --port "${WEBUI_PORT}" ${EXTRA_ARGS}
|
||||
@@ -0,0 +1,14 @@
|
||||
---
|
||||
process:
|
||||
transmission-da:
|
||||
running: true
|
||||
|
||||
port:
|
||||
tcp:9091:
|
||||
listening: true
|
||||
|
||||
http:
|
||||
http://localhost:9091:
|
||||
status: 200
|
||||
body:
|
||||
- '<title>Transmission Web Interface</title>'
|
||||
@@ -0,0 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
TOKEN=$(curl https://ghcr.io/token\?scope\="repository:k8s-at-home/transmission:pull" | jq --raw-output '.[]')
|
||||
version=$(curl -H "Authorization: Bearer ${TOKEN}" https://ghcr.io/v2/k8s-at-home/transmission/tags/list | jq --raw-output '.tags[]' | grep -v latest | grep -v buildcache | tail -n1)
|
||||
version="${version#*v}"
|
||||
version="${version#*release-}"
|
||||
echo "${version}"
|
||||
Reference in New Issue
Block a user