dappnode / DAppNode

General repository of the project dappnode
GNU General Public License v3.0
589 stars 104 forks source link

Make a better guide #5

Closed eduadiez closed 6 years ago

YalorMewn commented 6 years ago

For this example we'll be installing DAppNode on a Digital Ocean droplet, but the process should work in any other VPS provider like AWS, Azure, etc.

Step 1.) Set up your VPS using Digital Ocean by following official documentation

Step 2.) Open your computers terminal, proceed to install CE for Ubuntu by following official documentation. 2.1) Enter the code below, (Note each $ symbolizes a line of code you must enter individually)

$ sudo apt-get update $ sudo apt-get -y install \ apt-transport-https \ ca-certificates \ curl \ software-properties-common $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - $ sudo apt-key fingerprint 0EBFCD88 $ sudo add-apt-repository \ "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) \ stable" $ sudo apt-get update $ sudo apt-get -y install docker-ce"\

Step 3.) Install Docker Compose for Linux by following their official documentation.

$ sudo curl -L https://github.com/docker/compose/releases/download/1.19.0/docker-compose-uname -s-uname -m-o /usr/local/bin/docker-compose $ sudo chmod +x /usr/local/bin/docker-compose

Step 4.) Install Node 8 or 9 for Ubuntu:

$ curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash - $ sudo apt-get install -y nodejs

Step 5.) Install DAppNode:

$ sudo npm i -g @dappnode/dappnode $ dappnode init $ sudo npm i -g @dapp

Step 6.) Start the node:

dappnode start

You're done with installation!

7.)Now that the system has started , you can check to see that all the systems are running:

dappnode ps

8.) You can check the state of the chain:

docker logs -t dncore-dnp_ethchain

Note: The chain will take some time to synchronize.

Once it syncs, this number........👇🏼 in your terminal Screen Shot 2018-05-24 at 9.30.36 PM.png

Will match the "Last Blocks" number on etherscan.io Screen Shot 2018-05-24 at 9.37.27 PM.png

YalorMewn commented 6 years ago

Writing a script for auto generation of steps 1-8

YalorMewn commented 6 years ago

Step #1 Follow Ubuntu Guide

When asked to configure: Option 1. Install DAppNode Option 2. Install DAppNode from Kernel

Hostname: ubuntu ___ enter your own name ( like naming your Wifi Router)

Encrypt your home directory?

2 users (Technical open) and (fast newbie friendly) create ISO for each

sponnet commented 6 years ago

During the dappnode installation I ran into following things

( I installed the DappNode on a dedicated piece of hardware at home )

geleeroyale commented 6 years ago

I installed DAppNode on my regular system (18.04 - Kenel 4.17 ... probably not the best idea in current state but here is how it went). EDIT: I can not get it to work probably ... seems like the vpn connection did not get set-up on the system) ... probably heavily colliding with my own nginx and ufw

1

First it seems rc.local is not set up regularly anymore - so if we want it to run on newer distributions this should go into prerequisites ... Found this suggestion and also ran installer as root - seemed to absolve the seb - error from my log file (at the end of this report).

sudo -i

touch /etc/rc.local

chmod +x /etc/rc.local

(add whatever you want to your /etc/rc.local file)

systemctl enable rc-local.service

2

I would love to have an uninstall script

3

Missing more detailed instructions on:

My log file


Loading DAppNode Core...
Loaded image: bind.dnp.dappnode.eth:0.1.1
Loaded image: ipfs.dnp.dappnode.eth:0.1.1
Loaded image: ethchain.dnp.dappnode.eth:0.1.3
Loaded image: ethforward.dnp.dappnode.eth:0.1.0
Loaded image: vpn.dnp.dappnode.eth:0.1.3
Loaded image: wamp.dnp.dappnode.eth:0.1.0
Loaded image: dappmanager.dnp.dappnode.eth:0.1.2
Loaded image: admin.dnp.dappnode.eth:0.1.1
sed: can't read /etc/rc.local: No such file or directory
DAppNode installed
DAppNode starting...
Creating network "dncore_network" with driver "bridge"
Creating volume "dncore_ipfsdnpdappnodeeth_export" with default driver
Creating volume "dncore_ethchaindnpdappnodeeth_data" with default driver
Creating volume "dncore_dappmanagerdnpdappnodeeth_data" with default driver
Creating volume "dncore_vpndnpdappnodeeth_data" with default driver
Creating volume "dncore_ipfsdnpdappnodeeth_data" with default driver
Creating volume "dncore_binddnpdappnodeeth_data" with default driver
Creating DAppNodeCore-dappmanager.dnp.dappnode.eth ... 
Creating DAppNodeCore-ethforward.dnp.dappnode.eth ... 
Creating DAppNodeCore-ipfs.dnp.dappnode.eth ... 
Creating DAppNodeCore-vpn.dnp.dappnode.eth ... 
Creating DAppNodeCore-wamp.dnp.dappnode.eth ... 
Creating DAppNodeCore-admin.dnp.dappnode.eth ... 
Creating DAppNodeCore-dappmanager.dnp.dappnode.eth
Creating DAppNodeCore-ethchain.dnp.dappnode.eth ... 
Creating DAppNodeCore-bind.dnp.dappnode.eth ... 
Creating DAppNodeCore-ethforward.dnp.dappnode.eth
Creating DAppNodeCore-ipfs.dnp.dappnode.eth
Creating DAppNodeCore-vpn.dnp.dappnode.eth
Creating DAppNodeCore-wamp.dnp.dappnode.eth
Creating DAppNodeCore-bind.dnp.dappnode.eth
Creating DAppNodeCore-admin.dnp.dappnode.eth
Creating DAppNodeCore-ethchain.dnp.dappnode.eth

Creating DAppNodeCore-ethforward.dnp.dappnode.eth ... done

Creating DAppNodeCore-dappmanager.dnp.dappnode.eth ... done

Creating DAppNodeCore-vpn.dnp.dappnode.eth ... done

Creating DAppNodeCore-wamp.dnp.dappnode.eth ... done

Creating DAppNodeCore-bind.dnp.dappnode.eth ... done

Creating DAppNodeCore-admin.dnp.dappnode.eth ... done

Creating DAppNodeCore-ipfs.dnp.dappnode.eth ... done

Creating DAppNodeCore-ethchain.dnp.dappnode.eth ... done
DAppNode started

JComulada commented 6 years ago

Hi,

I tried with 4 new installations. All those was made from VMWare, using local and iSCSI disks, with 8/16Gb assigned memory and 4 virtual Xeon CPUs for each virtual machine

  1. DAppNode from ISO: Easy to install for a regular tech-user. Useful "Suggested options for Ubuntu Server installation" document. Ends correctly but VPN doesn't works. Suggestion: For evaluation tests, could be interesting to do a "basic services list" to debug first incidences or a "logs list" to explore for errors.

  2. Ubuntu 17.04LTS from ISO + DAppNode installation: It works at first time. You can connect to dashboard and observe chain synchronization. After 3 days, chain has not been synchronized. Suggestion: At Docker and Docker-compose installation, system asks for a sudo password. But this message is covered by new messages and it's difficult to see (after 3 attempts....)

  3. Ubuntu 18.04LTS from ISO + DappNode installation: As 2., works at first time, but chain sync never ends (stops at 58%). After restart and install Ubuntu's upgrades, it arrives at 98% and stops (time count indicates "infinity")

  4. Ubuntu 18.04LTS from ISO + DAppNode installation: Similar results as 3, but after some reboots (5-6), VPN stops to respond

Resume:

  1. DAppNode is a high bandwith disk consumer, tests with iSCSI, local and remote disks shows an intensive disk transference from vm. As developers recommends: better SSD units
  2. It's necessary to have a basic list of services and log files for check basic errors or report bugs to team
  3. Normal www navigation through VPN (without DAppNode synced) is very smooth and stable, you can't find differences with or without DAppNode intermediation.
YalorMewn commented 6 years ago

Hey @JComulada, this is an incredible analysis!

Thank you so much for taking the time and providing such recommendations, we absolutely will take these into account.

People like yourself are exactly the types we need to help us get DAppNode streamlined and delivered to the people ASAP!

JComulada commented 6 years ago

Ok, and if you can write me a list of logs files, I can fill the site with a more thorough analysis...

;o)