This project deploys Acestream within a Docker container using Ubuntu 22.04 and Python 3.10 for compatibility.
Acestream is a platform for live streaming via peer-to-peer networks. Dockerizing Acestream simplifies its setup and provides isolated environments.
- Docker Installation: Ensure Docker Desktop is installed on your system.
-
Script Overview: The
SetupAcestream.bat
script automates the following tasks:- Checking for Docker installation and operational status.
- Downloading the latest Acestream Docker image.
- Setting up the container with dynamic port assignment (to avoid conflicts).
- Updating the
docker-compose.yml
file dynamically based on the available ports. - Starting the Acestream container and opening the web interface.
-
Usage: Download and run the
SetupAcestream.bat
script as Administrator.
Note: The script ensures the latest Acestream Docker image is used and that the container management is handled efficiently.
This project uses the ubuntu:22.04 base image. You must clone the project first. Then, to build the image, use:
docker build --no-cache -t docker-acestream .
To start a container and run Acestream with dynamic port assignment:
docker run --name docker-acestream -d -p 6878:6878 -e INTERNAL_IP=127.0.0.1 --restart unless-stopped docker-acestream
The SetupAcestream.bat
script handles the dynamic assignment of ports to prevent conflicts when running multiple
instances.
-
Start the Container: Use
docker-compose
to start the container:docker-compose up -d
-
Update the Image: To get the latest image version:
docker-compose pull && docker-compose up -d
Access Acestream via the web interface. The SetupAcestream.bat
script automatically opens the correct URL based on the
assigned port:
http://<INTERNAL_IP>:<PORT>/webui/player/
You can load Acestream links directly in the provided input field.
Check the health status of the Acestream container:
docker inspect --format='{{json .State.Health}}' docker-acestream
Alternatively, use the web interface:
http://<INTERNAL_IP>:<PORT>/webui/api/service?method=get_version
The project includes dynamic port assignment for both HTTP and HTTPS ports to prevent conflicts when running multiple
instances. This is handled in the SetupAcestream.bat
script.
The player.html
file is dynamically updated with the correct IP address and port during the container startup process.
This ensures that the web interface points to the correct Acestream engine instance.
We welcome contributions. Fork, make changes, and submit a pull request for review.
This project is under the MIT License. See LICENSE for more details.