add faq about remote storage.
This commit is contained in:
parent
9380d92af8
commit
0b86df87c0
2 changed files with 92 additions and 43 deletions
2
.vscode/settings.json
vendored
2
.vscode/settings.json
vendored
|
|
@ -30,6 +30,7 @@
|
||||||
"buildcache",
|
"buildcache",
|
||||||
"Cfmrc",
|
"Cfmrc",
|
||||||
"choco",
|
"choco",
|
||||||
|
"cifs",
|
||||||
"consoletitle",
|
"consoletitle",
|
||||||
"continuedl",
|
"continuedl",
|
||||||
"cookiesfrombrowser",
|
"cookiesfrombrowser",
|
||||||
|
|
@ -97,6 +98,7 @@
|
||||||
"multidict",
|
"multidict",
|
||||||
"muxdelay",
|
"muxdelay",
|
||||||
"mweb",
|
"mweb",
|
||||||
|
"nfsvers",
|
||||||
"nodesc",
|
"nodesc",
|
||||||
"noninteractive",
|
"noninteractive",
|
||||||
"noprogress",
|
"noprogress",
|
||||||
|
|
|
||||||
57
FAQ.md
57
FAQ.md
|
|
@ -1,10 +1,16 @@
|
||||||
|
# The origin of the project.
|
||||||
|
|
||||||
|
The project first started as a fork [meTube](https://github.com/alexta69/metube), since then it has been completely
|
||||||
|
rewritten and redesigned. The original project was a great starting point, but it didn't align with my vision for the
|
||||||
|
project and what i wanted to achieve with it.
|
||||||
|
|
||||||
# Environment variables
|
# Environment variables
|
||||||
|
|
||||||
Certain configuration values can be set via environment variables, using the `-e` parameter on the docker command line,
|
Certain configuration values can be set via environment variables, using the `-e` parameter on the docker command line,
|
||||||
or the `environment:` section in `compose.yaml` file.
|
or the `environment:` section in `compose.yaml` file.
|
||||||
|
|
||||||
| Environment Variable | Description | Default |
|
| Environment Variable | Description | Default |
|
||||||
| ------------------------------ | ------------------------------------------------------------------ | -------------------------- |
|
| ------------------------------ | ------------------------------------------------------------------ | ------------------- |
|
||||||
| TZ | The timezone to use for the application | `(not_set)` |
|
| TZ | The timezone to use for the application | `(not_set)` |
|
||||||
| YTP_OUTPUT_TEMPLATE | The template for the filenames of the downloaded videos | `%(title)s.%(ext)s` |
|
| YTP_OUTPUT_TEMPLATE | The template for the filenames of the downloaded videos | `%(title)s.%(ext)s` |
|
||||||
| YTP_DEFAULT_PRESET | The default preset to use for the download | `default` |
|
| YTP_DEFAULT_PRESET | The default preset to use for the download | `default` |
|
||||||
|
|
@ -263,8 +269,49 @@ YTP_PICTURES_BACKENDS=https://watchstate.ip/v1/api/system/images/background?apik
|
||||||
|
|
||||||
Where `[api_key]` is the api key you get from your WatchState instance.
|
Where `[api_key]` is the api key you get from your WatchState instance.
|
||||||
|
|
||||||
# The origin of the project.
|
# How to use share folder or external storage as download target?
|
||||||
|
|
||||||
The project first started as a fork [meTube](https://github.com/alexta69/metube), since then it has been completely
|
You can simply mount the share folder as target for `/downloads` path, but in some cases you might face issues with permissions or
|
||||||
rewritten and redesigned. The original project was a great starting point, but it didn't align with my vision for the
|
cross-device link errors. To avoid these issues, you can mount the share folder as a named volume, and then mount the
|
||||||
project and what i wanted to achieve with it.
|
named volume to `/downloads/smb` or `/downloads/nfs`.
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
services:
|
||||||
|
ytptube:
|
||||||
|
user: "${UID:-1000}:${UID:-1000}" # change this to your user id and group id, for example: "1000:1000"
|
||||||
|
image: ghcr.io/arabcoders/ytptube:latest
|
||||||
|
container_name: ytptube
|
||||||
|
restart: unless-stopped
|
||||||
|
ports:
|
||||||
|
- "8081:8081"
|
||||||
|
volumes:
|
||||||
|
# Config must be mounted locally as read-write sqlite doesn't support network mounts.
|
||||||
|
- ./config:/config:rw
|
||||||
|
# Mount a local directory
|
||||||
|
- ./downloads:/downloads/local:rw
|
||||||
|
# Mount the NFS share
|
||||||
|
- nfs-data:/downloads/nfs:rw
|
||||||
|
# Mount the SMB share
|
||||||
|
- smb-data:/downloads/smb:rw
|
||||||
|
tmpfs:
|
||||||
|
- /tmp
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
nfs-data:
|
||||||
|
driver: local
|
||||||
|
driver_opts:
|
||||||
|
type: nfs
|
||||||
|
o: addr=10.0.0.3,rw,nfsvers=4 # <--- Change server IP and options
|
||||||
|
device: ":/exported/path" # <--- Remote NFS path
|
||||||
|
|
||||||
|
smb-data:
|
||||||
|
driver: local
|
||||||
|
driver_opts:
|
||||||
|
type: cifs
|
||||||
|
o: username=my_username,password=my_password,vers=3.0,uid=1000,gid=1000,file_mode=0777,dir_mode=0777 # <--- Change options to fit your needs
|
||||||
|
device: "//10.0.0.3/public" # <--- Remote SMB path
|
||||||
|
```
|
||||||
|
|
||||||
|
If you prefer, you can bypass YTPTube `download_path` and set it to `/` and completely manage your own mounts. However,
|
||||||
|
please be aware that the file browser feature will expose whatever `download_path` is set to. **So, if you set it to `/`,
|
||||||
|
the file browser will expose the entire container filesystem.**
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue