streama Docker & Self-Hosted Deployment

GitHub

Self hosted streaming media server.

9,821 stars JavaScript JavaScript 5 files ยท ~5,584 tokens #media#media-player#media-server#streaming#video-player#video-streaming
RAW Compose
1. Pull Image (DOCKERHUB) docker pull library/streama
2. Docker Run (1-Click Launch) docker run -d --name streama -p 80:80 --restart always streama
3. Podman Run podman run -d --name streama -p 80:80 --restart always streama
4. Skopeo Inspect (Zero-Pull Manifest) skopeo inspect docker://docker.io/library/streama:latest
5. ORAS Pull (OCI Artifact) oras pull streama
6. Compose Deployment docker compose up -d
docker/docker-compose.yml
Download .yml
version: "3"

services:
  mysql:
    platform: linux/x86_64
    image: mysql:5.7
    restart: always
    container_name: mysql
    hostname: mysql
    networks:
      - net-backend
    expose:
      - 3306
    volumes:
      - db_data:/var/lib/mysql
    environment:
      MYSQL_ROOT_PASSWORD: streama_root_password
      MYSQL_USER: streama
      MYSQL_DATABASE: streama
      MYSQL_PASSWORD: streama_password

  streama:
    image: streama
    build: .
    restart: always
    container_name: streama
    hostname: streama
    depends_on:
      - mysql
    networks:
      - net-backend
    expose:
      - 8080
    volumes:
      - $HOME/movies:/data/streama # Change to your video folder
      - app_data:/app/streama
    environment:
      ACTIVE_PROFILE: mysql
      MYSQL_HOST: mysql
      MYSQL_PORT: 3306
      MYSQL_DB: streama
      MYSQL_USER: streama
      MYSQL_PASSWORD: streama_password

  proxy-reverse:
    image: proxy-reverse
    build: nginx/.
    restart: always
    container_name: proxy-reverse
    hostname: proxy-reverse
    depends_on:
      - streama
    networks:
      - net-backend
    ports:
      - "80:80"
    volumes:
      - proxy_reverse_data:/etc/nginx
      - proxy_reverse_data_log:/var/log/nginx

networks:
  net-backend:

volumes:
  db_data:
  app_data:
  proxy_reverse_data:
  proxy_reverse_data_log: