Docker Compose - tsaridas/stremio-docker GitHub Wiki
Docker Compose
Docker Compose is the recommended way to run the Stremio Docker container as it provides better configuration management and easier deployment.
Basic Setup
Create a compose.yaml file in your project directory:
services:
stremio:
image: tsaridas/stremio-docker:latest
restart: unless-stopped
environment:
NO_CORS: 1
AUTO_SERVER_URL: 1
#IPADDRESS: 192.168.1.10 # Setup your ip address here
ports:
- "8080:8080"
volumes:
- "./stremio-data:/root/.stremio-server"
Then run:
docker compose up -d
Configuration Examples
HTTP Setup (Local Network)
services:
stremio:
image: tsaridas/stremio-docker:latest
restart: unless-stopped
environment:
NO_CORS: 1
AUTO_SERVER_URL: 1
ports:
- "8080:8080"
volumes:
- "./stremio-data:/root/.stremio-server"
HTTPS with Public IP
services:
stremio:
image: tsaridas/stremio-docker:latest
restart: unless-stopped
environment:
IPADDRESS: 0.0.0.0 # Auto-detect public IP
AUTO_SERVER_URL: 1
USERNAME: admin # Optional: for basic auth
PASSWORD: password # Optional: for basic auth
ports:
- "8080:8080"
volumes:
- "./stremio-data:/root/.stremio-server"
HTTPS with Private IP
services:
stremio:
image: tsaridas/stremio-docker:latest
restart: unless-stopped
environment:
IPADDRESS: 192.168.1.10 # Your private IP
AUTO_SERVER_URL: 1
ports:
- "8080:8080"
volumes:
- "./stremio-data:/root/.stremio-server"
Custom Domain with Certificate
services:
stremio:
image: tsaridas/stremio-docker:latest
restart: unless-stopped
environment:
DOMAIN: stremio.mydomain.com
CERT_FILE: certificate.pem
AUTO_SERVER_URL: 1
ports:
- "8080:8080"
volumes:
- "./stremio-data:/root/.stremio-server"
With Hardware Acceleration (GPU)
services:
stremio:
image: tsaridas/stremio-docker:latest
restart: unless-stopped
environment:
NO_CORS: 1
AUTO_SERVER_URL: 1
ports:
- "8080:8080"
volumes:
- "./stremio-data:/root/.stremio-server"
devices:
- "/dev/dri:/dev/dri" # Enable GPU acceleration
With Health Check
services:
stremio:
image: tsaridas/stremio-docker:latest
restart: unless-stopped
environment:
NO_CORS: 1
AUTO_SERVER_URL: 1
ports:
- "8080:8080"
volumes:
- "./stremio-data:/root/.stremio-server"
healthcheck:
test: ["CMD-SHELL", "curl -f http://localhost:8080 || exit 1"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
Useful Commands
Start the service
docker compose up -d
Stop the service
docker compose down
View logs
docker compose logs -f stremio
Update to latest version
docker compose pull
docker compose up -d
Restart the service
docker compose restart stremio
Environment Variables Reference
See Configuration Options for a complete list of available environment variables.
Tips
-
Data Persistence: The
./stremio-datavolume ensures your configuration and cache persist between container restarts. -
Port Mapping: Only port 8080 needs to be exposed as both the web player and streaming server run behind nginx.
-
Restart Policy:
unless-stoppedensures the container restarts automatically if it crashes or after system reboot. -
Resource Limits: You can add resource limits if needed:
deploy: resources: limits: memory: 2G cpus: '1.0' -
Network Configuration: For advanced networking, you can define custom networks:
networks: stremio-net: driver: bridge services: stremio: # ... other config networks: - stremio-net