Appearance
Hosting your own LBRY Web Instance
Run your own instance of https://lbry.tv using Docker images.
Run the SDK
The LBRY SDK provides RPC and streaming endpoints to interact with the LBRY network. Web users will connect to it directly, so it must be web-accessible. You may have to open ports on your firewall.
shell
docker run -d -p 5279:5279 -p 5280:5280 vshyba/websdkThis image will not save files to disk. It has the save_blobs and save_files config options set to false. If you want to save files, see Building your own SDK image below.
Run the web app
Clone and install the app as described in the lbry-desktop repo README. If you want to customize it further, follow the extra steps in Customize the web app section. Otherwise:
shell
git clone https://github.com/lbryio/lbry-desktop.git
yarn
cp .env.defaults .envConfigure .env with the following settings. They must match the SDK ports in the previous section.
dotenv
WEB_SERVER_PORT=8080
SDK_API_PATH=http://localhost:5279
LBRY_WEB_API=http://localhost:5279
LBRY_WEB_STREAMING_API=http://localhost:5280
LBRY_API_URL=http://disabled-api/
LBRY_WEB_BUFFER_API=https://disabledCompile and run
shell
NODE_ENV=production yarn compile:web
nodejs web/index.jsBuilding your own SDK image
If you want to customize the SDK settings, you can
Clone the SDK repo:
shell
git clone https://github.com/lbryio/lbry-sdk.gitCreate a docker/webconf.yaml file and modify as you need. This is a good start:
shell
allowed_origin: "*"
max_key_fee: "0.0 USD"
save_files: false
save_blobs: false
streaming_server: "0.0.0.0:5280"
api: "0.0.0.0:5279"
data_dir: /tmp
download_dir: /tmp
wallet_dir: /tmpNote that it is required to have streaming_server and api set to user-accessible IPs. If you want this to be accessible on the open web, that means setting them to 0.0.0.0.
To build the image, run:
shell
docker build -f docker/Dockerfile.web -t <your dockerhub username>/<project name, like 'websdk'> .
docker push <dockerhub username/project name>