Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 0933b591fe | |||
| 16d971d8bb | |||
| 3792de3c91 |
3
AUTHORS.md
Normal file
3
AUTHORS.md
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
### Authors
|
||||||
|
|
||||||
|
- Joe Fleming ([w33ble](https://github.com/w33ble))
|
||||||
8
CHANGELOG.md
Normal file
8
CHANGELOG.md
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
### Changelog
|
||||||
|
|
||||||
|
#### 1.1.0 (27 November 2019)
|
||||||
|
- initial commit [`b66eb8a`](https://git.w33ble.com/w33ble/youtube-dl-web/commit/b66eb8abe793f7d551f1c44612a0b7e32d9b05b4)
|
||||||
|
- feat: functional download server [`eb35ae5`](https://git.w33ble.com/w33ble/youtube-dl-web/commit/eb35ae5dfdb76c6f144920e0c49b0313c9dbfb22)
|
||||||
|
- doc: update readme [`a955d20`](https://git.w33ble.com/w33ble/youtube-dl-web/commit/a955d20a52201d7d6ed56d8db077adf654e18636)
|
||||||
|
- feat: allow cleanup via REMOVE_DOWNLOAD env [`3792de3`](https://git.w33ble.com/w33ble/youtube-dl-web/commit/3792de3c91f307403eee6acec5a914cdf5ab9809)
|
||||||
|
- docs: add note about REMOVE_DOWNLOAD to readme [`16d971d`](https://git.w33ble.com/w33ble/youtube-dl-web/commit/16d971d8bbc9f82d83d3aee40119b179123303e2)
|
||||||
12
README.md
12
README.md
@@ -15,6 +15,18 @@ docker run -it --rm -p 8080:8080 -v $PWD/data:/app/data w33ble/youtube-dl-web
|
|||||||
|
|
||||||
Then hit `http://localhost:8080`, passing in a `url` and optionally a `format` query parameter for where to download from.
|
Then hit `http://localhost:8080`, passing in a `url` and optionally a `format` query parameter for where to download from.
|
||||||
|
|
||||||
|
### Automatic cleanup
|
||||||
|
|
||||||
|
By default, this image will both send the download in the web response as well as save it to disk. This is handy if you're saving those downloads via a volume.
|
||||||
|
|
||||||
|
If you don't want to keep the downloads around, you can use the `REMOVE_DOWNLOAD` environment to tell the server to clean up the download after sending it in the web request. Setting the value to `1` or `true` is all it takes:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
docker run -it --rm -p 8080:8080 --env REMOVE_DOWNLOAD=1 w33ble/youtube-dl-web
|
||||||
|
```
|
||||||
|
|
||||||
|
Running it like this, the result from youtube-dl will only be useful from the web response. The file is cleaned up after sending so using the shared volume doesn't make sense.
|
||||||
|
|
||||||
## Deploy to Docker Hub
|
## Deploy to Docker Hub
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "youtube-dl-web",
|
"name": "youtube-dl-web",
|
||||||
"version": "1.0.1",
|
"version": "1.1.0",
|
||||||
"description": "youtube-dl wrapped in a simple web server",
|
"description": "youtube-dl wrapped in a simple web server",
|
||||||
"main": "index.js",
|
"main": "index.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
|||||||
@@ -89,6 +89,19 @@ module.exports = async function server(req, res) {
|
|||||||
sent = true;
|
sent = true;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
sent = true;
|
sent = true;
|
||||||
|
|
||||||
|
// clean up the download if told to
|
||||||
|
res.on('finish', () => {
|
||||||
|
const { REMOVE_DOWNLOAD } = process.env;
|
||||||
|
if (!REMOVE_DOWNLOAD) return;
|
||||||
|
|
||||||
|
const shouldRemove = REMOVE_DOWNLOAD === '1' || REMOVE_DOWNLOAD.toLowerCase() === 'true';
|
||||||
|
if (shouldRemove) {
|
||||||
|
logger.info('Removing local file:', dlFilepath);
|
||||||
|
fs.unlinkSync(dlFilepath);
|
||||||
|
}
|
||||||
|
});
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user