Twitch VOD and Live Stream archiving platform. Includes a rendered chat for each archive.
Deploy this app to RackNerd for $0.99/mo only!
Depends on a proprietary service outside the user's control
Twitch VOD and Stream archiving platform with a rendered chat. Files are saved in a friendly format allowing for use without Ganymede.
Ganymede allows archiving of past streams (VODs) and livestreams both with a rendered chat. All files are saved in a friendly way that doesn't require Ganymede to view them (see file structure). Ganymede is the successor of Ceres.
For in-depth documentation on features visit the wiki.
Visit the docs folder for the API docs.
Ganymede consists of four docker containers:
Feel free to use an existing Postgres database container and Nginx container if you don't want to spin new ones up.
docker-compose.yml
file and nginx.conf
.docker-compose.yml
file modifying the environment variables, see environment variables.docker compose up -d
.admin
password: ganymede
.The API container can be run as a non root user. To do so add PUID
and PGID
environment variables, setting the value to your user. Read linuxserver's docs about this for more information.
Note: On startup the container will chown
/data
, /logs
, and /tmp
. It will not recursively chown
the /vods
directory. Ensure the mounted vods
directory is readable by the set user.
ENV Name | Description |
---|---|
TZ |
Timezone. |
DB_HOST |
Host of the database. |
DB_PORT |
Port of the database. |
DB_USER |
Username for the database. |
DB_PASS |
Password for the database. |
DB_NAME |
Name of the database. |
DB_SSL |
Whether to use SSL. Default: disable . See DB SSL for more information. |
DB_SSL_ROOT_CERT |
Optional Path to DB SSL root certificate. See DB SSL for more information. |
JWT_SECRET |
Secret for JWT tokens. This should be a long random string. |
JWT_REFRESH_SECRET |
Secret for JWT refresh tokens. This should be a long random string. |
TWITCH_CLIENT_ID |
Twitch application client ID. |
TWITCH_CLIENT_SECRET |
Twitch application client secret. |
FRONTEND_HOST |
Host of the frontend, used for CORS. Example: http://192.168.1.2:4801 |
COOKIE_DOMAIN |
Optional Base domain for cookies. Used when reverse proxying. See reverse proxy for more information. |
OAUTH_PROVIDER_URL |
Optional OAuth provider URL. See https://github.com/Zibbp/ganymede/wiki/SSO---OpenID-Connect |
OAUTH_CLIENT_ID |
Optional OAuth client ID. |
OAUTH_CLIENT_SECRET |
Optional OAuth client secret. |
OAUTH_REDIRECT_URL |
Optional OAuth redirect URL, points to the API. Example: http://localhost:4000/api/v1/auth/oauth/callback . |
ENV Name | Description |
---|---|
API_URL |
Host for the API. Example: http://192.168.1.2:4800 . |
CDN_URL |
Host for the Nginx serivce. Example: http://197.148.1.2:4802 . |
SHOW_SSO_LOGIN_BUTTON |
true/false Show a "login via sso" button on the login page. |
FORCE_SSO_AUTH |
true/false Force users to login via SSO by bypassing the login page. |
REQUIRE_LOGIN |
true/false Require users to be logged in to view videos. |
Ensure these are the same in the API environment variables.
ENV Name | Description |
---|---|
POSTGRES_PASSWORD |
Database password |
POSTGRES_USER |
Database username. |
POSTGRES_DB |
Name of the database. |
Volume | Description | Example |
---|---|---|
/vods |
Mount for VOD storage. This example I have my NAS mounted to /mnt/vault/vods . |
/mnt/vault/vods:/vods |
/logs |
Queue log folder. | ./logs:/logs |
/data |
Config folder. | ./data:/data |
Optional
./tmp:/tmp
Binding the tmp
folder prevents lost data if the container crashes as temporary downloads are stored in tmp
which gets flushed when the container stops.
Volume | Description | Example |
---|---|---|
/mnt/vods |
VOD storage, same as the API container volume. | /mnt/vault/vods:/mnt/vods |
/etc/nginx/nginx.conf:ro |
Path to the Nginx conf file. | /path/to/nginx.conf:/etc/nginx/nginx.conf:ro |
GNU General Public License v3.0
Please login to review this project.
No reviews for this project yet.
An automatic Twitch recorder capable of capturing live stre…
Video hosting website and video archival manager for Niconi…
Providence - Highly configurable Web-based framework for ma…
Comments (0)
Please login to join the discussion on this project.