mirror of
https://github.com/TheBinaryNinja/tvapp2.git
synced 2026-06-04 08:15:42 -04:00
docs(readme): update
This commit is contained in:
8
.github/ISSUE_TEMPLATE/bug-report.yml
vendored
8
.github/ISSUE_TEMPLATE/bug-report.yml
vendored
@@ -14,6 +14,9 @@ body:
|
|||||||
4. Before creating this bug report, ensure you updated your applications to the latest versions.
|
4. Before creating this bug report, ensure you updated your applications to the latest versions.
|
||||||
Check your configurations to ensure there are no typos or errors.
|
Check your configurations to ensure there are no typos or errors.
|
||||||
Docker users should attempt to re-pull the TVApp2 image to ensure caching is not the cause of an issue.
|
Docker users should attempt to re-pull the TVApp2 image to ensure caching is not the cause of an issue.
|
||||||
|
5. To get detailed logs of the issue, set the environment variable:
|
||||||
|
`LOG_LEVEL=5`
|
||||||
|
Restart the docker container and you should get more detailed logs.
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
|
|
||||||
@@ -126,9 +129,9 @@ body:
|
|||||||
- type: textarea
|
- type: textarea
|
||||||
id: docker-compose
|
id: docker-compose
|
||||||
attributes:
|
attributes:
|
||||||
label: docker-compose.yml
|
label: docker-compose.yml / Run command
|
||||||
description: |
|
description: |
|
||||||
Copy / paste your `docker-compose.yml` file here
|
Copy / paste your `docker-compose.yml` file or run command here
|
||||||
|
|
||||||
- type: textarea
|
- type: textarea
|
||||||
id: logs
|
id: logs
|
||||||
@@ -137,6 +140,7 @@ body:
|
|||||||
description: |
|
description: |
|
||||||
Paste your docker logs here.
|
Paste your docker logs here.
|
||||||
You can get your docker logs by opening terminal and running `docker logs tvapp2`
|
You can get your docker logs by opening terminal and running `docker logs tvapp2`
|
||||||
|
To get detailed logs, set the environment variable `LOG_LEVEL=5` and restart the container.
|
||||||
|
|
||||||
- type: textarea
|
- type: textarea
|
||||||
id: screenshots
|
id: screenshots
|
||||||
|
|||||||
111
README.md
111
README.md
@@ -7,7 +7,7 @@
|
|||||||
|
|
||||||
<div align="center">
|
<div align="center">
|
||||||
|
|
||||||
<img src="docs/img/screenshots/01.png" height="320">
|
<img src="docs/img/screenshots/01.gif" height="450">
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
<br />
|
<br />
|
||||||
@@ -154,13 +154,34 @@ For the [environment variables](#environment-variables), you may specify these i
|
|||||||
|
|
||||||
#### Environment Variables
|
#### Environment Variables
|
||||||
|
|
||||||
|
The following is a list of environment variables you can declare within your `docker-compose.yml` or docker run command:
|
||||||
|
|
||||||
|
<br />
|
||||||
|
|
||||||
|
> [!CAUTION]
|
||||||
|
> Do **not** add `"` quotation marks to environment variables.
|
||||||
|
>
|
||||||
|
> ✔️ Correct
|
||||||
|
> ```yml
|
||||||
|
> environment:
|
||||||
|
> - TASK_CRON_SYNC=*/60 * * * *
|
||||||
|
> ```
|
||||||
|
>
|
||||||
|
> ❌ Incorrect
|
||||||
|
> ```yml
|
||||||
|
> environment:
|
||||||
|
> - TASK_CRON_SYNC="*/60 * * * *"
|
||||||
|
> ```
|
||||||
|
|
||||||
|
<br />
|
||||||
|
|
||||||
| Env Var | Default | Description |
|
| Env Var | Default | Description |
|
||||||
| --- | --- | --- |
|
| --- | --- | --- |
|
||||||
| `TZ` | `Etc/UTC` | Timezone for error / log reporting |
|
| `TZ` | `Etc/UTC` | Timezone for error / log reporting |
|
||||||
| `WEB_IP` | `0.0.0.0` | IP to use for webserver |
|
| `WEB_IP` | `0.0.0.0` | IP to use for webserver |
|
||||||
| `WEB_PORT` | `4124` | Port to use for webserver |
|
| `WEB_PORT` | `4124` | Port to use for webserver |
|
||||||
| `WEB_FOLDER` | `www` | Internal container folder to keep TVApp2 web files in. <br /><br /> <sup>⚠️ This should not be used unless you know what you're doing</sup> |
|
| `WEB_FOLDER` | `www` | Internal container folder to keep TVApp2 web files in. <br /><br /> <sup>⚠️ This should not be used unless you know what you're doing</sup> |
|
||||||
| `WEB_ENCODING` | `deflate, br` | Defines the HTTP `Accept-Encoding` request and response header. This value specifies what content encoding the sender can understand<br /><br />Gzip compression can be enabled by specifying `'gzip, deflate, br'` |
|
| `WEB_ENCODING` | `deflate, br` | Defines the HTTP `Accept-Encoding` request and response header. This value specifies what content encoding the sender can understand<br /><br />Gzip compression can be enabled by specifying `'gzip, deflate, br'`, however, [it may break Jellyfin users](#build-error-err-27-jellyfinlivetvguideguidemanager-error-getting-programs-for-channel-xxxxxxxxxxxxxxx-source-2-systemxmlxmlexception--hexadecimal-value-0x1f-is-an-invalid-character-line-1-position-1). |
|
||||||
| `WEB_PROXY_HEADER` | `x-forwarded-for` | Defines the header to look for when finding a client's IP address. Used to get a client's IP when behind a reverse proxy or Cloudflare |
|
| `WEB_PROXY_HEADER` | `x-forwarded-for` | Defines the header to look for when finding a client's IP address. Used to get a client's IP when behind a reverse proxy or Cloudflare |
|
||||||
| `URL_REPO` | `https://git.binaryninja.net/BinaryNinja/` | Determines where the data files will be downloaded from. Do not change this or you will be unable to get M3U and EPG data. |
|
| `URL_REPO` | `https://git.binaryninja.net/BinaryNinja/` | Determines where the data files will be downloaded from. Do not change this or you will be unable to get M3U and EPG data. |
|
||||||
| `FILE_URL` | `urls.txt` | Filename for `urls.txt` cache file |
|
| `FILE_URL` | `urls.txt` | Filename for `urls.txt` cache file |
|
||||||
@@ -368,7 +389,7 @@ This repository offers two types of docker image; `stable` and `development`. Yo
|
|||||||
|
|
||||||
| Build | Tags |
|
| Build | Tags |
|
||||||
| ------------------------- | ----------------------------------------------------------------------------- |
|
| ------------------------- | ----------------------------------------------------------------------------- |
|
||||||
| `Stable` | `🔖 tvapp2:latest` <br /> `🔖 tvapp2:1.5.0` <br /> `🔖 tvapp2:1.5` <br /> `🔖 tvapp2:1` |
|
| `Stable` | `🔖 tvapp2:latest` <br /> `🔖 tvapp2:1.5.2` <br /> `🔖 tvapp2:1.5` <br /> `🔖 tvapp2:1` |
|
||||||
| `Development` | `🔖 tvapp2:development` |
|
| `Development` | `🔖 tvapp2:development` |
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
@@ -580,18 +601,19 @@ Creates the TVApp2 `amd64` docker image:
|
|||||||
# Build tvapp2 amd64
|
# Build tvapp2 amd64
|
||||||
docker buildx build \
|
docker buildx build \
|
||||||
--build-arg ARCH=amd64 \
|
--build-arg ARCH=amd64 \
|
||||||
--build-arg VERSION=1.5.0 \
|
--build-arg VERSION=1.5.2 \
|
||||||
--build-arg BUILDDATE=20260812 \
|
--build-arg BUILDDATE=20260812 \
|
||||||
--build-arg RELEASE=stable \
|
--build-arg RELEASE=stable \
|
||||||
--tag ghcr.io/thebinaryninja/tvapp2:1.5.0 \
|
--tag ghcr.io/thebinaryninja/tvapp2:1.5.2 \
|
||||||
--tag ghcr.io/thebinaryninja/tvapp2:1.5 \
|
--tag ghcr.io/thebinaryninja/tvapp2:1.5 \
|
||||||
--tag ghcr.io/thebinaryninja/tvapp2:1 \
|
--tag ghcr.io/thebinaryninja/tvapp2:1 \
|
||||||
--tag ghcr.io/thebinaryninja/tvapp2:latest \
|
--tag ghcr.io/thebinaryninja/tvapp2:latest \
|
||||||
--attest type=provenance,disabled=true \
|
--attest type=provenance,disabled=true \
|
||||||
--attest type=sbom,disabled=true \
|
--attest type=sbom,disabled=true \
|
||||||
|
--output type=docker \
|
||||||
|
--builder default \
|
||||||
--file Dockerfile \
|
--file Dockerfile \
|
||||||
--platform linux/amd64 \
|
--platform linux/amd64 \
|
||||||
--output type=docker \
|
|
||||||
--allow network.host \
|
--allow network.host \
|
||||||
--network host \
|
--network host \
|
||||||
--no-cache \
|
--no-cache \
|
||||||
@@ -609,18 +631,19 @@ Creates the TVApp2 `arm64` docker image:
|
|||||||
# Build tvapp2 arm64
|
# Build tvapp2 arm64
|
||||||
docker buildx build \
|
docker buildx build \
|
||||||
--build-arg ARCH=arm64 \
|
--build-arg ARCH=arm64 \
|
||||||
--build-arg VERSION=1.5.0 \
|
--build-arg VERSION=1.5.2 \
|
||||||
--build-arg BUILDDATE=20260812 \
|
--build-arg BUILDDATE=20260812 \
|
||||||
--build-arg RELEASE=stable \
|
--build-arg RELEASE=stable \
|
||||||
--tag ghcr.io/thebinaryninja/tvapp2:1.5.0 \
|
--tag ghcr.io/thebinaryninja/tvapp2:1.5.2 \
|
||||||
--tag ghcr.io/thebinaryninja/tvapp2:1.5 \
|
--tag ghcr.io/thebinaryninja/tvapp2:1.5 \
|
||||||
--tag ghcr.io/thebinaryninja/tvapp2:1 \
|
--tag ghcr.io/thebinaryninja/tvapp2:1 \
|
||||||
--tag ghcr.io/thebinaryninja/tvapp2:latest \
|
--tag ghcr.io/thebinaryninja/tvapp2:latest \
|
||||||
--attest type=provenance,disabled=true \
|
--attest type=provenance,disabled=true \
|
||||||
--attest type=sbom,disabled=true \
|
--attest type=sbom,disabled=true \
|
||||||
|
--output type=docker \
|
||||||
|
--builder default \
|
||||||
--file Dockerfile \
|
--file Dockerfile \
|
||||||
--platform linux/arm64 \
|
--platform linux/arm64 \
|
||||||
--output type=docker \
|
|
||||||
--allow network.host \
|
--allow network.host \
|
||||||
--network host \
|
--network host \
|
||||||
--no-cache \
|
--no-cache \
|
||||||
@@ -742,8 +765,8 @@ docker run --privileged --rm tonistiigi/binfmt --install all
|
|||||||
|
|
||||||
Once the emulator is installed; we will now build two images. When building these two images; we will ensure the `--tag` value is different for each one, by adding the architecture to the end. This ensures we don't overwrite one image with the newer one. We need to have two seperate docker images with two different tags.
|
Once the emulator is installed; we will now build two images. When building these two images; we will ensure the `--tag` value is different for each one, by adding the architecture to the end. This ensures we don't overwrite one image with the newer one. We need to have two seperate docker images with two different tags.
|
||||||
|
|
||||||
- `--tag ghcr.io/thebinaryninja/tvapp2:1.5.0-amd64`
|
- `--tag ghcr.io/thebinaryninja/tvapp2:1.5.2-amd64`
|
||||||
- `--tag ghcr.io/thebinaryninja/tvapp2:1.5.0-arm64`
|
- `--tag ghcr.io/thebinaryninja/tvapp2:1.5.2-arm64`
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
|
|
||||||
@@ -754,10 +777,10 @@ Once the emulator is installed; we will now build two images. When building thes
|
|||||||
>
|
>
|
||||||
> | Registry | Tag |
|
> | Registry | Tag |
|
||||||
> | --- | --- |
|
> | --- | --- |
|
||||||
> | Dockerhub | `--tag thebinaryninja/tvapp2:1.5.0-amd64`<br>`--tag thebinaryninja/tvapp2:1.5.0-arm64` |
|
> | Dockerhub | `--tag thebinaryninja/tvapp2:1.5.2-amd64`<br>`--tag thebinaryninja/tvapp2:1.5.2-arm64` |
|
||||||
> | Github (GHCR) | `--tag ghcr.io/thebinaryninja/tvapp2:1.5.0-amd64`<br>`--tag ghcr.io/thebinaryninja/tvapp2:1.5.0-arm64` |
|
> | Github (GHCR) | `--tag ghcr.io/thebinaryninja/tvapp2:1.5.2-amd64`<br>`--tag ghcr.io/thebinaryninja/tvapp2:1.5.2-arm64` |
|
||||||
> | Registry v2 | `--tag registry.domain.lan/thebinaryninja/tvapp2:1.5.0-amd64`<br>`--tag registry.domain.lan/thebinaryninja/tvapp2:1.5.0-arm64` |
|
> | Registry v2 | `--tag registry.domain.lan/thebinaryninja/tvapp2:1.5.2-amd64`<br>`--tag registry.domain.lan/thebinaryninja/tvapp2:1.5.2-arm64` |
|
||||||
> | Gitea | `--tag git.binaryninja.net/binaryninja/tvapp2:1.5.0-amd64`<br>`--tag git.binaryninja.net/binaryninja/tvapp2:1.5.0-arm64` |
|
> | Gitea | `--tag git.binaryninja.net/binaryninja/tvapp2:1.5.2-amd64`<br>`--tag git.binaryninja.net/binaryninja/tvapp2:1.5.2-arm64` |
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
|
|
||||||
@@ -778,15 +801,16 @@ Creates the TVApp2 **Stable** release `amd64` docker image:
|
|||||||
# Build Tvapp2 amd64 - (stable release)
|
# Build Tvapp2 amd64 - (stable release)
|
||||||
docker buildx build \
|
docker buildx build \
|
||||||
--build-arg ARCH=amd64 \
|
--build-arg ARCH=amd64 \
|
||||||
--build-arg VERSION=1.5.0 \
|
--build-arg VERSION=1.5.2 \
|
||||||
--build-arg BUILDDATE=20260812 \
|
--build-arg BUILDDATE=20260812 \
|
||||||
--build-arg RELEASE=stable \
|
--build-arg RELEASE=stable \
|
||||||
--tag ghcr.io/thebinaryninja/tvapp2:1.5.0-amd64 \
|
--tag ghcr.io/thebinaryninja/tvapp2:1.5.2-amd64 \
|
||||||
--attest type=provenance,disabled=true \
|
--attest type=provenance,disabled=true \
|
||||||
--attest type=sbom,disabled=true \
|
--attest type=sbom,disabled=true \
|
||||||
|
--output type=docker \
|
||||||
|
--builder default \
|
||||||
--file Dockerfile \
|
--file Dockerfile \
|
||||||
--platform linux/amd64 \
|
--platform linux/amd64 \
|
||||||
--output type=docker \
|
|
||||||
--allow network.host \
|
--allow network.host \
|
||||||
--network host \
|
--network host \
|
||||||
--no-cache \
|
--no-cache \
|
||||||
@@ -805,15 +829,16 @@ Creates the TVApp2 **Stable** release `arm64` docker image:
|
|||||||
# Build Tvapp2 arm64 - (stable release)
|
# Build Tvapp2 arm64 - (stable release)
|
||||||
docker buildx build \
|
docker buildx build \
|
||||||
--build-arg ARCH=arm64 \
|
--build-arg ARCH=arm64 \
|
||||||
--build-arg VERSION=1.5.0 \
|
--build-arg VERSION=1.5.2 \
|
||||||
--build-arg BUILDDATE=20260812 \
|
--build-arg BUILDDATE=20260812 \
|
||||||
--build-arg RELEASE=stable \
|
--build-arg RELEASE=stable \
|
||||||
--tag ghcr.io/thebinaryninja/tvapp2:1.5.0-arm64 \
|
--tag ghcr.io/thebinaryninja/tvapp2:1.5.2-arm64 \
|
||||||
--attest type=provenance,disabled=true \
|
--attest type=provenance,disabled=true \
|
||||||
--attest type=sbom,disabled=true \
|
--attest type=sbom,disabled=true \
|
||||||
|
--output type=docker \
|
||||||
|
--builder default \
|
||||||
--file Dockerfile \
|
--file Dockerfile \
|
||||||
--platform linux/arm64 \
|
--platform linux/arm64 \
|
||||||
--output type=docker \
|
|
||||||
--allow network.host \
|
--allow network.host \
|
||||||
--network host \
|
--network host \
|
||||||
--no-cache \
|
--no-cache \
|
||||||
@@ -832,15 +857,16 @@ Creates the TVApp2 **Development** release `amd64` docker image:
|
|||||||
# Build Tvapp2 amd64 - (development release)
|
# Build Tvapp2 amd64 - (development release)
|
||||||
docker buildx build \
|
docker buildx build \
|
||||||
--build-arg ARCH=amd64 \
|
--build-arg ARCH=amd64 \
|
||||||
--build-arg VERSION=1.5.0 \
|
--build-arg VERSION=1.5.2 \
|
||||||
--build-arg BUILDDATE=20260812 \
|
--build-arg BUILDDATE=20260812 \
|
||||||
--build-arg RELEASE=development \
|
--build-arg RELEASE=development \
|
||||||
--tag ghcr.io/thebinaryninja/tvapp2:development-amd64 \
|
--tag ghcr.io/thebinaryninja/tvapp2:development-amd64 \
|
||||||
--attest type=provenance,disabled=true \
|
--attest type=provenance,disabled=true \
|
||||||
--attest type=sbom,disabled=true \
|
--attest type=sbom,disabled=true \
|
||||||
|
--output type=docker \
|
||||||
|
--builder default \
|
||||||
--file Dockerfile \
|
--file Dockerfile \
|
||||||
--platform linux/amd64 \
|
--platform linux/amd64 \
|
||||||
--output type=docker \
|
|
||||||
--allow network.host \
|
--allow network.host \
|
||||||
--network host \
|
--network host \
|
||||||
--no-cache \
|
--no-cache \
|
||||||
@@ -859,15 +885,16 @@ Creates the TVApp2 **Development** release `arm64` docker image:
|
|||||||
# Build Tvapp2 arm64 - (development release)
|
# Build Tvapp2 arm64 - (development release)
|
||||||
docker buildx build \
|
docker buildx build \
|
||||||
--build-arg ARCH=arm64 \
|
--build-arg ARCH=arm64 \
|
||||||
--build-arg VERSION=1.5.0 \
|
--build-arg VERSION=1.5.2 \
|
||||||
--build-arg BUILDDATE=20260812 \
|
--build-arg BUILDDATE=20260812 \
|
||||||
--build-arg RELEASE=development \
|
--build-arg RELEASE=development \
|
||||||
--tag ghcr.io/thebinaryninja/tvapp2:development-arm64 \
|
--tag ghcr.io/thebinaryninja/tvapp2:development-arm64 \
|
||||||
--attest type=provenance,disabled=true \
|
--attest type=provenance,disabled=true \
|
||||||
--attest type=sbom,disabled=true \
|
--attest type=sbom,disabled=true \
|
||||||
|
--output type=docker \
|
||||||
|
--builder default \
|
||||||
--file Dockerfile \
|
--file Dockerfile \
|
||||||
--platform linux/arm64 \
|
--platform linux/arm64 \
|
||||||
--output type=docker \
|
|
||||||
--allow network.host \
|
--allow network.host \
|
||||||
--network host \
|
--network host \
|
||||||
--no-cache \
|
--no-cache \
|
||||||
@@ -880,8 +907,8 @@ docker buildx build \
|
|||||||
|
|
||||||
After completing the `docker buildx` commands above; you should now have a few new images. Each image should have its own separate docker tags which do not conflict. If you decided to not build the **development** releases below; that is fine.
|
After completing the `docker buildx` commands above; you should now have a few new images. Each image should have its own separate docker tags which do not conflict. If you decided to not build the **development** releases below; that is fine.
|
||||||
|
|
||||||
- `--tag ghcr.io/thebinaryninja/tvapp2:1.5.0-amd64`
|
- `--tag ghcr.io/thebinaryninja/tvapp2:1.5.2-amd64`
|
||||||
- `--tag ghcr.io/thebinaryninja/tvapp2:1.5.0-arm64`
|
- `--tag ghcr.io/thebinaryninja/tvapp2:1.5.2-arm64`
|
||||||
- `--tag ghcr.io/thebinaryninja/tvapp2:development-amd64`
|
- `--tag ghcr.io/thebinaryninja/tvapp2:development-amd64`
|
||||||
- `--tag ghcr.io/thebinaryninja/tvapp2:development-arm64`
|
- `--tag ghcr.io/thebinaryninja/tvapp2:development-arm64`
|
||||||
|
|
||||||
@@ -907,15 +934,15 @@ You can also get the hash digests by running the commands:
|
|||||||
<br />
|
<br />
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
$ docker buildx imagetools inspect ghcr.io/thebinaryninja/tvapp2:1.5.0-amd64
|
$ docker buildx imagetools inspect ghcr.io/thebinaryninja/tvapp2:1.5.2-amd64
|
||||||
|
|
||||||
Name: ghcr.io/thebinaryninja/tvapp2:1.5.0-amd64
|
Name: ghcr.io/thebinaryninja/tvapp2:1.5.2-amd64
|
||||||
MediaType: application/vnd.docker.distribution.manifest.v2+json
|
MediaType: application/vnd.docker.distribution.manifest.v2+json
|
||||||
Digest: sha256:0abe1b1c119959b3b1ccc23c56a7ee2c4c908c6aaef290d4ab2993859d807a3b
|
Digest: sha256:0abe1b1c119959b3b1ccc23c56a7ee2c4c908c6aaef290d4ab2993859d807a3b
|
||||||
|
|
||||||
$ docker buildx imagetools inspect ghcr.io/thebinaryninja/tvapp2:1.5.0-arm64
|
$ docker buildx imagetools inspect ghcr.io/thebinaryninja/tvapp2:1.5.2-arm64
|
||||||
|
|
||||||
Name: ghcr.io/thebinaryninja/tvapp2:1.5.0-arm64
|
Name: ghcr.io/thebinaryninja/tvapp2:1.5.2-arm64
|
||||||
MediaType: application/vnd.docker.distribution.manifest.v2+json
|
MediaType: application/vnd.docker.distribution.manifest.v2+json
|
||||||
Digest: sha256:e68b9de8669eac64d4e4d2a8343c56705e05e9a907cf0b542343f9b536d9c473
|
Digest: sha256:e68b9de8669eac64d4e4d2a8343c56705e05e9a907cf0b542343f9b536d9c473
|
||||||
```
|
```
|
||||||
@@ -962,14 +989,14 @@ Digest: sha256:c719ccb034946e3f0625003f25026d001768794e38a1ba8aafc9146291d548
|
|||||||
> ```shell
|
> ```shell
|
||||||
> $ docker images --all --no-trunc | grep thebinaryninja
|
> $ docker images --all --no-trunc | grep thebinaryninja
|
||||||
>
|
>
|
||||||
> ghcr.io/thebinaryninja/tvapp2 1.5.0-arm64 sha256:48520ca15fed6483d2d5b79993126c311f833002345b0e12b8eceb5bf9def966 42 minutes ago 46MB
|
> ghcr.io/thebinaryninja/tvapp2 1.5.2-arm64 sha256:48520ca15fed6483d2d5b79993126c311f833002345b0e12b8eceb5bf9def966 42 minutes ago 46MB
|
||||||
>
|
>
|
||||||
> ghcr.io/thebinaryninja/tvapp2 1.5.0-amd64 sha256:54a9b7d390199532d5667fae67120d77e2f459bd6108b27ce94e0cfec8f3c41f 43 minutes ago 45MB
|
> ghcr.io/thebinaryninja/tvapp2 1.5.2-amd64 sha256:54a9b7d390199532d5667fae67120d77e2f459bd6108b27ce94e0cfec8f3c41f 43 minutes ago 45MB
|
||||||
> ```
|
> ```
|
||||||
>
|
>
|
||||||
> To get the correct sha256 digest, use:
|
> To get the correct sha256 digest, use:
|
||||||
> - `docker buildx imagetools inspect ghcr.io/thebinaryninja/tvapp2:1.5.0-amd64`
|
> - `docker buildx imagetools inspect ghcr.io/thebinaryninja/tvapp2:1.5.2-amd64`
|
||||||
> - `docker buildx imagetools inspect ghcr.io/thebinaryninja/tvapp2:1.5.0-arm64`
|
> - `docker buildx imagetools inspect ghcr.io/thebinaryninja/tvapp2:1.5.2-arm64`
|
||||||
> - `docker buildx imagetools inspect ghcr.io/thebinaryninja/tvapp2:development-amd64`
|
> - `docker buildx imagetools inspect ghcr.io/thebinaryninja/tvapp2:development-amd64`
|
||||||
> - `docker buildx imagetools inspect ghcr.io/thebinaryninja/tvapp2:development-arm64`
|
> - `docker buildx imagetools inspect ghcr.io/thebinaryninja/tvapp2:development-arm64`
|
||||||
>
|
>
|
||||||
@@ -989,7 +1016,7 @@ For the **stable** releases, use:
|
|||||||
# #
|
# #
|
||||||
|
|
||||||
docker buildx imagetools create \
|
docker buildx imagetools create \
|
||||||
--tag ghcr.io/thebinaryninja/tvapp2:1.5.0 \
|
--tag ghcr.io/thebinaryninja/tvapp2:1.5.2 \
|
||||||
--tag ghcr.io/thebinaryninja/tvapp2:1.5 \
|
--tag ghcr.io/thebinaryninja/tvapp2:1.5 \
|
||||||
--tag ghcr.io/thebinaryninja/tvapp2:1 \
|
--tag ghcr.io/thebinaryninja/tvapp2:1 \
|
||||||
--tag ghcr.io/thebinaryninja/tvapp2:latest \
|
--tag ghcr.io/thebinaryninja/tvapp2:latest \
|
||||||
@@ -998,9 +1025,9 @@ docker buildx imagetools create \
|
|||||||
|
|
||||||
[+] Building 0.2s (4/4) FINISHED
|
[+] Building 0.2s (4/4) FINISHED
|
||||||
=> [internal] pushing ghcr.io/thebinaryninja/tvapp2:latest 0.2s
|
=> [internal] pushing ghcr.io/thebinaryninja/tvapp2:latest 0.2s
|
||||||
=> [internal] pushing ghcr.io/thebinaryninja/tvapp2:1.5 0.2s
|
|
||||||
=> [internal] pushing ghcr.io/thebinaryninja/tvapp2:1 0.2s
|
=> [internal] pushing ghcr.io/thebinaryninja/tvapp2:1 0.2s
|
||||||
=> [internal] pushing ghcr.io/thebinaryninja/tvapp2:1.5.0 0.2s
|
=> [internal] pushing ghcr.io/thebinaryninja/tvapp2:1.5 0.2s
|
||||||
|
=> [internal] pushing ghcr.io/thebinaryninja/tvapp2:1.5.2 0.2s
|
||||||
```
|
```
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
@@ -1046,8 +1073,8 @@ In this example, we take the existing two files we created earlier, and merge th
|
|||||||
```shell
|
```shell
|
||||||
# Example 1 (using tag)
|
# Example 1 (using tag)
|
||||||
docker manifest create ghcr.io/thebinaryninja/tvapp2:latest \
|
docker manifest create ghcr.io/thebinaryninja/tvapp2:latest \
|
||||||
--amend ghcr.io/thebinaryninja/tvapp2:1.5.0-amd64 \
|
--amend ghcr.io/thebinaryninja/tvapp2:1.5.2-amd64 \
|
||||||
--amend ghcr.io/thebinaryninja/tvapp2:1.5.0-arm64
|
--amend ghcr.io/thebinaryninja/tvapp2:1.5.2-arm64
|
||||||
|
|
||||||
# Example 2 (using sha256 hash)
|
# Example 2 (using sha256 hash)
|
||||||
docker manifest create ghcr.io/thebinaryninja/tvapp2:latest \
|
docker manifest create ghcr.io/thebinaryninja/tvapp2:latest \
|
||||||
@@ -1088,7 +1115,7 @@ To build the project, `🗔 cd` into the project folder and run the build comman
|
|||||||
|
|
||||||
```shell
|
```shell
|
||||||
cd /home/docker/tvapp2/
|
cd /home/docker/tvapp2/
|
||||||
npm run docker:build:amd64 --VERSION=1.5.0 --BUILDDATE=20260812
|
npm run docker:build:amd64 --VERSION=1.5.2 --BUILDDATE=20260812
|
||||||
```
|
```
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
@@ -1213,7 +1240,7 @@ This docker container contains the following env variables:
|
|||||||
| `WEB_IP` | `0.0.0.0` | IP to use for webserver |
|
| `WEB_IP` | `0.0.0.0` | IP to use for webserver |
|
||||||
| `WEB_PORT` | `4124` | Port to use for webserver |
|
| `WEB_PORT` | `4124` | Port to use for webserver |
|
||||||
| `WEB_FOLDER` | `www` | Internal container folder to keep TVApp2 web files in. <br /><br /> <sup>⚠️ This should not be used unless you know what you're doing</sup> |
|
| `WEB_FOLDER` | `www` | Internal container folder to keep TVApp2 web files in. <br /><br /> <sup>⚠️ This should not be used unless you know what you're doing</sup> |
|
||||||
| `WEB_ENCODING` | `deflate, br` | Defines the HTTP `Accept-Encoding` request and response header. This value specifies what content encoding the sender can understand<br /><br />Gzip compression can be enabled by specifying `'gzip, deflate, br'` |
|
| `WEB_ENCODING` | `deflate, br` | Defines the HTTP `Accept-Encoding` request and response header. This value specifies what content encoding the sender can understand<br /><br />Gzip compression can be enabled by specifying `'gzip, deflate, br'`, however, [it may break Jellyfin users](#build-error-err-27-jellyfinlivetvguideguidemanager-error-getting-programs-for-channel-xxxxxxxxxxxxxxx-source-2-systemxmlxmlexception--hexadecimal-value-0x1f-is-an-invalid-character-line-1-position-1). |
|
||||||
| `WEB_PROXY_HEADER` | `x-forwarded-for` | Defines the header to look for when finding a client's IP address. Used to get a client's IP when behind a reverse proxy or Cloudflare |
|
| `WEB_PROXY_HEADER` | `x-forwarded-for` | Defines the header to look for when finding a client's IP address. Used to get a client's IP when behind a reverse proxy or Cloudflare |
|
||||||
| `URL_REPO` | `https://git.binaryninja.net/BinaryNinja/` | Determines where the data files will be downloaded from. Do not change this or you will be unable to get M3U and EPG data. |
|
| `URL_REPO` | `https://git.binaryninja.net/BinaryNinja/` | Determines where the data files will be downloaded from. Do not change this or you will be unable to get M3U and EPG data. |
|
||||||
| `FILE_URL` | `urls.txt` | Filename for `urls.txt` cache file |
|
| `FILE_URL` | `urls.txt` | Filename for `urls.txt` cache file |
|
||||||
|
|||||||
BIN
docs/img/screenshots/01.gif
Normal file
BIN
docs/img/screenshots/01.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 970 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 61 KiB After Width: | Height: | Size: 60 KiB |
Reference in New Issue
Block a user