add forte

This commit is contained in:
L4RM4ND 2023-03-07 00:16:46 +01:00
parent 4263768d23
commit 3330f3499b
3 changed files with 68 additions and 0 deletions

View File

@ -109,6 +109,7 @@ docker compose up
- [Stash](examples/stash) - Stash is a self-hosted webapp written in Go which organizes and serves your porn. - [Stash](examples/stash) - Stash is a self-hosted webapp written in Go which organizes and serves your porn.
- [Raveberry](examples/raveberry) - A multi-user music server with a focus on participation. - [Raveberry](examples/raveberry) - A multi-user music server with a focus on participation.
- [Deemix](examples/deemix) - deemix is a barebone deezer downloader library built from the ashes of Deezloader Remix. - [Deemix](examples/deemix) - deemix is a barebone deezer downloader library built from the ashes of Deezloader Remix.
- [Forte](examples/forte) - Self-hosted, music streaming platform.
- [MeTube](examples/metube) - Web GUI for youtube-dl (using the yt-dlp fork) with playlist support. Allows you to download videos and audio only from YouTube and dozens of other sites. - [MeTube](examples/metube) - Web GUI for youtube-dl (using the yt-dlp fork) with playlist support. Allows you to download videos and audio only from YouTube and dozens of other sites.
- [Syncthing](examples/syncthing) - Syncthing is a continuous file synchronization program. It synchronizes files between two or more computers. - [Syncthing](examples/syncthing) - Syncthing is a continuous file synchronization program. It synchronizes files between two or more computers.
- [Transmission](examples/transmission) - Transmission is a fast, easy, and free BitTorrent client. - [Transmission](examples/transmission) - Transmission is a fast, easy, and free BitTorrent client.

9
examples/forte/README.md Normal file
View File

@ -0,0 +1,9 @@
# References
- https://github.com/kaangiray26/forte
# Notes
After deploying, the forte admin dashboard will be available on TCP/3000. You can log into the web dashboard using `forte` as username and `alternative` as password. Please change those default credentials. Use a reverse proxy like Traefik if you plan on exposing the forte instance, as HTTPS is required to stream flawlessly.
After creating a user account via the forte web dashboard, you can browse https://forte.buzl.uk/ and use your own server to stream music from. Specify your created user account and the automatically created password token.

View File

@ -0,0 +1,58 @@
version: '3'
services:
app:
image: kaangiray26/forte:2.8
container_name: forte
restart: on-failure
#ports:
# - "3000:3000"
depends_on:
postgres:
condition: service_healthy
environment:
mode: public
port: 3000
NODE_ENV: production # Set Node Environment
POSTGRES_HOST: postgres # Postgres Host/IP
POSTGRES_PORT: 5432 # Postgres Database Port
POSTGRES_DB: forte # Set Postgres Database Name
POSTGRES_USER: forte # Set Postgres Username
POSTGRES_PASSWORD: forte # Set Postgres Password
volumes:
- ${DOCKER_VOLUME_STORAGE:-/mnt/docker-volumes}/forte/library:/library # your music library to import from
#networks:
# - proxy
#labels:
# - traefik.enable=true
# - traefik.http.routers.forte.rule=Host(`forte.example.com`)
# - traefik.http.services.forte.loadbalancer.server.port=3000
# - traefik.docker.network=proxy
# # Part for optional traefik middlewares
# - traefik.http.routers.forte.middlewares=local-ipwhitelist@file
# - traefik.http.middlewares.cors.headers.customResponseHeaders.Access-Control-Allow-Origin=https://forte.buzl.uk
# - traefik.http.middlewares.cors.headers.customFrameOptionsValue=forte.buzl.uk
# - traefik.http.middlewares.cors.headers.customResponseHeaders.Cross-Origin-Resource-Policy=cross-origin
# - traefik.http.routers.forte.middlewares=cors
postgres:
image: kaangiray26/postgres:2.0
container_name: forte-db
restart: always
environment:
POSTGRES_DB: forte # Set Postgres Database Name
POSTGRES_USER: forte # Set Postgres Username
POSTGRES_PASSWORD: forte # Set Postgres Password
volumes:
- ${DOCKER_VOLUME_STORAGE:-/mnt/docker-volumes}/forte/db:/var/lib/postgresql/data
healthcheck:
test: [ "CMD-SHELL", "pg_isready -U forte" ]
interval: 10s
timeout: 5s
retries: 5
#networks:
# - proxy
#networks:
# proxy:
# external: true