diff --git a/docs/docs/about/what_is_tvapp.md b/docs/docs/about/what_is_tvapp.md
index 1df0c35c..29bb1a24 100644
--- a/docs/docs/about/what_is_tvapp.md
+++ b/docs/docs/about/what_is_tvapp.md
@@ -42,10 +42,21 @@ All channels contain multiple sources so that you have a reliable streaming expe
-## Associated Links
+## Image Sources
-Check out the following websites for additional resources for the TVApp2 docker image below.
+This project contains several repositories which all share the same code; use them as backups:
+- [🔀 dockerhub:thebinaryninja/tvapp2](https://hub.docker.com/r/thebinaryninja/tvapp2)
+- [🔀 github:thebinaryninja/tvapp2](https://github.com/thebinaryninja/tvapp2)
+- [🔀 gitea:git.binaryninja.net/binaryninja/tvapp2](https://git.binaryninja.net/binaryninja/tvapp2)
+
+
+
+| Pull URL | Registry | Arch | Version |
+| --- | --- | --- | --- |
+| `ghcr.io/thebinaryninja/tvapp2:latest`
`ghcr.io/thebinaryninja/tvapp2:development` | Github | amd64
arm64 | [![Github][github-docker-version-img]][github-docker-version-uri] |
+| `thebinaryninja/tvapp2:latest`
`thebinaryninja/tvapp2:development` | Dockerhub | amd64
arm64 | [![Dockerhub][dockerhub-docker-version-img]][dockerhub-docker-version-uri] |
+| `git.binaryninja.net/binaryninja/tvapp2:latest`
`git.binaryninja.net/binaryninja/tvapp2:development` | Gitea | amd64
arm64 | [![Gitea][gitea-docker-version-img]][gitea-docker-version-uri] |
@@ -64,6 +75,13 @@ The following is a small list of the features available with the TVApp2 containe
- Channel playlists can be downloaded as a `.m38u` or a compressed `.gzip` archive.
- Compressed gzip compatible with 3rd party apps like Cabernet and Jellyfin.
- Tracking statistics which show the last update time, size, and a description for each file's purpose.
+- API endpoints:
+ - **Resync All Files**
+ - http://127.0.0.1:4124/api/resync
+ - http://127.0.0.1:4124/api/restart
+ - **Health check**
+ - http://127.0.0.1:4124/api/health
+ - http://127.0.0.1:4124/api/status
- Direct access to download each of the generated files, including multiple easy-to-remember URLs for each file type.
- **M3U Playlist**:
- http://127.0.0.1:4124/playlist
diff --git a/docs/docs/install/docker-run.md b/docs/docs/install/docker-run.md
new file mode 100644
index 00000000..36a3710a
--- /dev/null
+++ b/docs/docs/install/docker-run.md
@@ -0,0 +1,125 @@
+---
+title: "Install: docker-run"
+tags:
+ - install
+---
+
+# docker run
+
+Our documentation provides two ways that you may start up a TVApp2 docker container:
+
+
+
+- :material-circle: [docker run](docker-run.md)
+
+ ---
+
+ Spin up the TVApp2 container using the `docker run` command.
+ This is useful for quick launches, but is not time efficient
+ if you plan to use this container long-term.
+
+ This requires a longer command that must be used each time
+ you wish to bring the container up.
+
+- :material-circle: [docker compose](docker-compose.md)
+
+ ---
+
+ Spin up the TVApp2 container by creating a `📄 docker-compose.yml`
+ file which will store all of your options such as env variables,
+ mounted volumes, and labels.
+
+ To bring the container up, `cd` into the folder with the
+ `📄 docker-compose.yml` file, and run the
+ command `docker compose up -d`.
+
+
+
+
+
+The `🗔 docker run` command allows you to start up a docker container by providing a set of [options](#command-options) which define how the container should operate, including the environment variables, mounted volumes, assigned IP address, etc.
+
+
+
+---
+
+
+
+## Start TVApp2
+
+Pulling the image if needed and starting the container. To spin up a TVApp2 container using this method; run a command similar to the below example. See the section [Options](#options) below for a list of what you can specify.
+
+=== "Terminal"
+
+ ```shell
+ docker run -d \
+ --restart=unless-stopped \ # (1)!
+ --name tvapp2 \ # (2)!
+ -p 4124:4124 \ # (3)!
+ -e "TZ=Etc/UTC" \ # (4)!
+ -v ${PWD}/app:/usr/bin/app \ # (5)!
+ ghcr.io/thebinaryninja/tvapp2:latest # (6)!
+ ```
+
+ 1. Specifies what happens if the container becomes unresponsive or goes down.
+ 2. Name to assign the container; otherwise, a random id will be given.
+ 3. Port that will be used for the container
+ 4. Environment variable which specifies the timezone to use for the container.
+ 5. Mount the container volume `/usr/bin/app` to your host machine in the subfolder `./app`
+ 6. Specifies what docker image to spin up.
+
+
+
+To confirm that the container has been brought up, run the command `docker ps | grep tvapp2`. If you have the app [Portainer](https://portainer.io/), you can sign into your admin interface and view your TVApp2 container details, instead of using a command-line.
+
+```
+e95236c42b43 binaryninja/tvapp2:1.4.0 "/init" 3 seconds ago Up 3 seconds 4124/tcp tvapp2
+```
+
+
+
+---
+
+
+
+## Options
+
+Review the list of docker run options below. These allow you to define how a docker container will start up.
+
+???- note "Official Docker Documentation"
+ To view a full list of the available docker parameters, view the official docker documentation at:
+
+ - https://docs.docker.com/reference/cli/docker/container/run/
+
+| Parameter / Flag | Description |
+| --- | --- |
+| `-d, --detach` | Run container in background and print container ID |
+| `-e, --env` | Set environment variable |
+| `--env-file` | Read in a file of environment variables |
+| `--expose` | Expose a port or a range of ports |
+| `--health-cmd` | Command to run to check health |
+| `--health-interval` | Time between running the check
`ms|s|m|h` (default 0s) |
+| `--health-retries` | Consecutive failures needed to report unhealthy |
+| `--health-start-interval` | Time between running the check during the start period
`ms|s|m|h` (default 0s) |
+| `--health-start-period` | Start period for the container to initialize before starting health-retries countdown
`ms|s|m|h` (default 0s) |
+| `--health-timeout` | Maximum time to allow one check to run
`ms|s|m|h` (default 0s) |
+| `-h, --hostname` | Container host name |
+| `--ip` | IPv4 address (e.g., 172.30.100.104) |
+| `--ip6` | IPv6 address (e.g., 2001:db8::33) |
+| `-l, --label` | Set meta data on a container |
+| `--mount` | Attach a filesystem mount to the container |
+| `--name` | Assign a name to the container |
+| `--network` | Connect a container to a network |
+| `--privileged` | Give extended privileges to this container |
+| `-p, --publish` | Publish a container's port(s) to the host |
+| `--pull` | Pull image before running
`always`, `missing`, `never` |
+| `--restart` | Restart policy to apply when a container exits
`on-failure[:max-retries]`, `always`, `unless-stopped` |
+| `-u, --user` | Username or UID
`[:]` |
+| `-v, --volume` | Bind mount a volume |
+| `-w, --workdir` | Working directory inside the container |
+
+
+
+
+
+
diff --git a/docs/docs/install/index.md b/docs/docs/install/index.md
index d2af6ef8..af4ed1d9 100644
--- a/docs/docs/install/index.md
+++ b/docs/docs/install/index.md
@@ -26,13 +26,20 @@ Select your desired option to bring up the TVApp2 container with:
This is useful for quick launches, but is not time efficient
if you plan to use this container long-term.
+ This requires a longer command that must be used each time
+ you wish to bring the container up.
+
- :material-circle: [docker compose](docker-compose.md)
---
- Spin up the TVApp2 container by creating a `docker-compose.yml`
- file which will store all of your variables, volumes, properties,
- and any labels that you may need the container to utilize.
+ Spin up the TVApp2 container by creating a `📄 docker-compose.yml`
+ file which will store all of your options such as env variables,
+ mounted volumes, and labels.
+
+ To bring the container up, `cd` into the folder with the
+ `📄 docker-compose.yml` file, and run the
+ command `docker compose up -d`.
diff --git a/docs/docs/stylesheets/extra.css b/docs/docs/stylesheets/extra.css
index 8ee8b23e..09bad11d 100644
--- a/docs/docs/stylesheets/extra.css
+++ b/docs/docs/stylesheets/extra.css
@@ -179,6 +179,11 @@
}
}
+[dir="ltr"] .md-typeset table th[role="columnheader"]::after
+{
+ margin-left: 5px;
+}
+
/*
Theme > Main
*/