spee.ch/fullstart.md
2018-10-20 14:18:49 -04:00

4 KiB
Raw Blame History

Create Your Own Spee.ch!

1. Prerequisites

You will need the following tools installed

  • Node (v8 LTS).
  • Make sure you install from the Node website link.
  • npm (should come installed with Node).
  • Git
  • Curl
  • Tmux
  • Unzip

Make sure npm is up-to-date.

$ npm update

Setup a Webserver to serve Spee.ch from Port 3000.

  • If you are using a server provided by lbry, we will have caddy installed already.
  • If you are using your own server, make sure to have a web server installed and set up to serve from port 3000.
  • Nginx instructions (recommended).
    • Insert directions for certbot before installing.

    • Install Nginx.

    • Create a config file called spee.ch in /etc/nginx/sites-available

    • see example: config file.

    • Rename all mentions of sub.domain.com with your subdomain name.

    • Run this command to link the sites-available.

      $ ln -s /etc/nginx/sites-available/speech /etc/nginx/sites-enabled/speech

    • Restart Nginx.

      $ sudo service nginx restart

    • Try visiting your website.

      • If Nginx is working, you should get a 502 error because there is nothing running on 3000 yet.
      • If you get the default Nginx greeting, you have not properly configured it to serve from port 3000.
      • You can find logs in /var/log/nginx/ too.
    • Caddy tutorial: https://caddyserver.com/tutorial

MySql

  • Install MySql

  • Create user root.

    • Note: We are going to access mysql as root for this setup, but you may want to create a separate user in the future.
    • Keep your password somewhere handy!
  • Create a database called lbry and make sure you can use it.

    `CREATE DATABASE lbry;`
    
    `$ USE lbry;`
    
    `$ exit; (or press ctl + d)`
    
  • Try logging into mysql.

    `$ mysql -u username -p`
    
  • If you are using a LBRY server, your password is the one provided for ssh.

    • Note: If it fails, try using sudo.

##2. Install & Run the LBRY Daemon

Install lbrynet

note: if you have a server from LBRY, lbrynet is already installed, you can skip to 2.4.

$ wget --quiet -O ~/latest_daemon.zip https://lbry.io/get/lbrynet.linux.zip
$ unzip -o -u "~/latest_daemon.zip"

Start lbrynet

$ tmux
$ ./lbrynet-daemon

Detach (exit) the tmux session and leave lbrynet running in the background.

press ctrl + b then d to detach

Get LBC!

Get a list of your wallets:

$ ~/lbrynet-cli wallet_list

Send some LBC to one of the addresses from your wallet.

Check your balance again:

$ ~/lbrynet-cli wallet_balance

You should have LBC!

Install ffmpeg

directions: here

3. Set up Spee.ch

Clone the spee.ch repo

$ git clone https://github.com/lbryio/www.spee.ch.git

Change directory into your sites folder

$ cd <name-of-your-site>` or `$ cd www.spee.ch

Install dependencies

$ npm install

Run the config cli:

$ npm run configure

Check your site configs

$ cd config/
$ nano siteConfig.json

Build & run

Run the below command to transpile, build, and start your server.

$ npm run start

Note: if you had to use sudo to login to mysql above, you may have issues with this step.

Spee.ch should now be running !

Visit your site in the browser. Try publishing an image!

4. Bonus:

Install PM2 and run your server with PM2

Install PM2

$ sudo npm i -g pm2

From inside your projects folder, start your server with PM2.

$ pm2 start server.js

Visit your site and see if it is running!

Sync Your Spee.ch Instance with the full Blockchain

Install lbrycrdd

Install lbry-decoder

Start lbry-decoder

Install & run spee.ch-sync