Page is under construction.
Feedback Welcome!
Feedback Welcome!
Complete: needs review
1
Install Docker
If docker is already installed at or above version 20.10.x, you can skip this step.
Copy
Ask AI
docker --version
- Update Docker
- Install Docker
If you have an older version of Docker installed - you will need to update the Docker Engine and CLI.Follow the instructions for your OS and Docker type in the Docker Docs to install the latest version of Docker or follow the terminal command guide below:
Show >_ Update Docker
Show >_ Update Docker
LinuxDocker Desktop (Windows & MacOS)
- Update package lists
Copy
Ask AI
sudo apt-get update
- Install the latest version of Docker
Copy
Ask AI
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
- Verify the installation
Copy
Ask AI
docker --version
- Use the GUI
Settings > Software Updates menu- Use the CLI
Copy
Ask AI
docker desktop update
If docker is not installed, follow the instructions for your OS in the Docker installation guide to install Docker Engine & CLI or follow the (non-canonical) quick guide below:
Show >_ Install Docker
Show >_ Install Docker
LinuxWindows & MacOS
- Update package lists & install dependencies
Copy
Ask AI
sudo apt-get update
sudo apt-get install ca-certificates curl apt-transport-https lsb-release
- Add Docker’s official GPG key
Copy
Ask AI
sudo mkdir -m 0755 -p /etc/apt/keyrings
sudo curl -fsSL download.docker.com -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
- Setup the Repo (Replace ubuntu with debian if you are using Debian).
Copy
Ask AI
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] download.docker.com \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
- Install Docker Packages
Copy
Ask AI
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
- Verify the installation
Copy
Ask AI
docker --version
Copy
Ask AI
sudo docker run hello-world
2
Pull Livepeer Docker image
Fetch the latest Livepeer Docker image with the following command
Copy
Ask AI
docker pull livepeer/go-livepeer:master
3
Start Docker Volume
Start the Base Docker volume
Copy
Ask AI
docker-compose up -d
- On-chain files:
~/.lpData/arbitrum-one-mainnet - Off-chain files:
~/.lpData/offchain - AI files:
~/.ai-gateway-lpData
Show Volume Structure Differences
Show Volume Structure Differences
| Configuration | Directory Structure | Additional Requirements |
|---|---|---|
| Video Off-Chain | /root/.lpData/offchain/ | Basic setup only |
| AI Off-Chain | /root/.lpData/offchain/ + models dir | AI models directory |
| Dual Off-Chain | /root/.lpData/offchain/ + models dir | Both video and AI files |
| Video On-Chain | /root/.lpData/arbitrum-one-mainnet/ + keystore | ETH keystore files |
| AI On-Chain | /root/.lpData/arbitrum-one-mainnet/ + keystore + models | ETH + AI files |
| Dual On-Chain | /root/.lpData/arbitrum-one-mainnet/ + keystore + models | All components |
Volume names can be customised as desired to avoid conflicts between different setups or Gateway instances (e.g.,
ai-gateway-lpData, dual-gateway-lpData)Next Step: Configure the Gateway
Jump to the configuration guide to see configuration options for the Gateway
I think the volumes section belongs in configuration not installation
Show Really only 2 options for install (Docker Hub or Source)
Show Really only 2 options for install (Docker Hub or Source)
Pull from Docker Hub (recommended) or build from sourceYou can also build locally instead of pulling from Docker Hub:Clone and build
git clone https://github.com/livepeer/go-livepeer.git
cd go-livepeer
make livepeer
The Makefile shows the build process Makefile:110-112 and includes all dependencies including FFmpeg and CUDA support.
For development, the source build gives you more flexibility to modify and test changes.
Show Notes on install vs Config
Show Notes on install vs Config
Installation vs Configuration
Installation refers to obtaining the software:Pulling the Docker image: docker pull livepeer/go-livepeer:master
Or building from source: make livepeer
Configuration refers to setting up runtime parameters:Creating docker-compose.yml with command-line flags livepeer.go:112-197
Specifying network settings, transcoding options, AI models, etc.
More Accurate Installation Steps
Install: Pull Docker image or build from source
Configure: Create docker-compose.yml with your specific flags and settings
Deploy: Run docker-compose up -d
The docker-compose file is where you define all the configuration flags like -gateway, -network, -transcodingOptions, -aiModels, etc. starter.go:80-178 . This makes it fundamentally a configuration step that customizes how the installed software runs.Notes
This distinction matters because:You can install the same software multiple ways (Docker, source build, binary)
Each installation method requires different configuration approaches
The configuration contains your business logic and operational parameters
Installation is a one-time setup, configuration evolves with your needs
The Livepeer repository provides examples in the box/ directory that demonstrate different configuration patterns box.md:1-119 .
Show Create ETH Wallet-> goes in config
Show Create ETH Wallet-> goes in config
Create Livepeer Gateway ETH account
In this step we need to start the Gateway in order to create an Ethereum account.Copy
Ask AI
docker compose run -it gateway
Make sure to never share or lose access to either the password or
the keystore file.
Keep this password handy, we will use it in the following steps.
Copy
Ask AI
nano -p /var/lib/docker/volumes/gateway-lpData/_data/eth-secret.txt
Modify Docker compose file to include eth-secret.txt
Copy
Ask AI
nano docker-compose.yml
-ethKeystorePath and saveCopy
Ask AI
-ethPassword=/root/.lpData/eth-secret.txt
Copy
Ask AI
version: '3.9'
services:
gateway:
image: livepeer/go-livepeer:<RELEASE_VERSION>
container_name: "gateway"
hostname: "gateway"
ports:
- 1935:1935
- 8935:8935
volumes:
- gateway-lpData:/root/.lpData
command: '-ethUrl=<YOUR ARB APC>
-ethKeystorePath=/root/.lpData
-ethPassword=/root/.lpData/eth-secret.txt
-network=arbitrum-one-mainnet
-cliAddr=gateway:5935
-broadcaster=true
-monitor=true
-v=99
-blockPollingInterval=20
-maxPricePerUnit=300
-pixelsPerUnit=1
-rtmpAddr=0.0.0.0:1935
-httpAddr=0.0.0.0:8935
'
volumes:
gateway-lpData:
external: true
Copy
Ask AI
docker compose up -d
Copy
Ask AI
docker exec -it gateway /bin/bash
livepeer_cli -host gateway -http 5935
Broken Link