Comments (9)
Interesting, I think this could be solved by chmodding the node_modules/youtube-dl/bin
folder on startup. I can't do much else as I don't have full control over that folder (it's a dependency), but I think that might solve it.
I'm not sure I want to do this in all cases so I might set up an environment variable to control it. Something like YTDL_CUSTOM_UID_GID. If any other problems arise because of a custom uid/gid, I can let the fix use the same environment variable so the environment variables don't add up.
I'll play around with this a bit more and see if I get any solutions to it.
from youtubedl-material.
For docker image, better practice is to update a dependency in a separate layer rather than changing it inside a running container.
from youtubedl-material.
This issue has been solved thanks to @SuperSandro2000 and @Wonderfall's hard work! Here's the merged PR. You can set the UID/GUID using ENV vars and it should work without issue. Thanks for the bug report!
from youtubedl-material.
Sorry, can someone give an example of how to set these ENV vars in docker compose. I've done;
environment:
- UID=501
- GUID: 999
but downloads are still owned by root. I also tried GID
instead of GUID
.
from youtubedl-material.
use either
environment:
UID: 501
GUID: 999
or
environment:
- UID=501
- GUID=999
You cant mix them.
from youtubedl-material.
Sorry that was a typo when writing it here. My compose file contains;
youtubedl-material:
image: tzahi12345/youtubedl-material:latest
container_name: youtubedl-material
restart: unless-stopped
ports:
- 17442:17442
volumes:
- path/to/youtubedl-material/appdata:/app/appdata
- path/to/youtubedl-material/audio:/app/audio
- path/to/youtubedl-material/video:/app/video
- path/to/youtubedl-material/subscriptions:/app/subscriptions
- path/to/youtubedl-material/users:/app/users
environment:
UID: 501
GUID: 999
All the files downloaded to my bind mount folder are owned by root:root not the user passed in the ENV vars.
from youtubedl-material.
I see you're on the latest
tag, which is fine! But the fix was only applied on the nightly
tag (latest means latest stable, while nightly reflects the current repo and any changes since the last update).
If you change the image tag to nightly and run docker-compose pull
, it should work. Lmk how it goes!
from youtubedl-material.
Thanks, nightly
tag worked. Only other change was I had GUID
so changed it to GID
.
from youtubedl-material.
Good catch! Missed that one. Glad you got it working :)
from youtubedl-material.
Related Issues (20)
- [BUG] Cannot Download Youtube Videos - SOLVED HOT 1
- [BUG] Retrieving info error when download any video, please help to resolve, thanks! HOT 9
- [BUG] npm ERR HOT 2
- [BUG] docker image won't start HOT 2
- [BUG] download fails for playlists with hidden or private videos in list HOT 1
- Help: how to find back admin password? HOT 2
- How to improvde download speed? HOT 1
- [BUG]download speed low and can't download subscriptions from big channel HOT 2
- [BUG] Docker image fails to start HOT 4
- [BUG] Failure to start with Docker image HOT 7
- Failed to Create Shim Error when building ?
- Deleted and and attempted to relaunch. Getting apprmor error
- [FEATURE] Timestams or Chapters for Jellyfin
- [BUG] Docker container start fails with EACCES HOT 2
- Support for newer npm/node? HOT 3
- [BUG] Default MP3 Audio Arguments Persists Despite Global/Custom Arguments
- [BUG] unable to get it working HOT 1
- [BUG] Download only mode downloads videos twice HOT 1
- [FEATURE] Notifiarr support
- Gluetun Docker Support
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from youtubedl-material.