Automated Dockerfile to record livestreams with streamlink forked from lauwarm/streamlink-recorder
This is a Docker Container to record a livestream. It uses the official Python Image with the Tag bullseye , installs streamlink and uses the Script streamlink-recorder.sh to periodically check if the stream is live.
To run the Container:
version: "3"
services:
record:
image: ghcr.io/kimpig/streamlink-recorder-mp4:main
container_name: Streamlink-Recorder
restart: unless-stopped
volumes:
- /urdownloadfolder:/home/download
environment:
- streamName=STREAMNAME
- streamLink=STREAMURL
- streamQuality=best
- streamOptions=OPTIONS
- uid=1000
- gid=1000
- TZ=Asia/Seoul
/home/download
- the place where the vods will be saved. Mount it to a desired place with -v
option.
/home/script
- the place where the scripts are stored. (entrypoint.sh and streamlink-recorder.sh)
/home/plugins
- the place where the streamlink plugins are stored.
streamLink
- the url of the stream you want to record.
streamQuality
- quality options (best, high, medium, low).
streamName
- name for the stream.
streamOptions
- streamlink flags (--twitch-disable-hosting --twitch-disable-ads, separated by space, see Plugins)
uid
- USER ID, map to your desired User ID (fallback to 9001)
gid
- GROUP ID, map to your desired Group ID (fallback to 9001)
The File will be saved as streamName - Year-Month-Day HourMinuteSecond - streamTitle.mp4
Also, format will be MP4, not TS (depending on ffmpeg)