Benutzer-Werkzeuge

Webseiten-Werkzeuge


dapnetnodeinstall

Installation procedure for new DAPNET node

ATTENTION: Due to serious problems of the current version of DAPNET-CORE we do not accept any new cores. A new version overcoming this issues is in progress. If you want to run your own core, please wait for the new version being released!

Introduction

This manual describes the necessary steps to install a new DAPNET Core node on a linux running machine. Please inform us about any mistakes or misunderstandable descriptions. Overview

The Node program consists of two parts:

  • The DAPNET-Core as the main control programm for all DAPNET actions
  • The DAPNET-Web as the Web frontend

Preparations

We assume a fresh debian based linux system where you have root access. The user the DAPNET Core will run on is dapnet in this manual. Choose whatever fits to you system setup. Create this user. Google how to do this on your linux system. The dapnet Core does not need root rights to run.

The following software packages are needed

  • git
  • maven
  • Java 1.8

You need to install java 1.8 following this link. This link is for Debian or Ubuntu. For RaspberryPi use

sudo apt-get install oracle-java8-jdk

After having installed java, install the rest with

sudo apt-get install git maven

Verify your java version is minimum 1.8 with

java -version

If you have installed the default java 1.7 OpenJDK, remove it with

sudo apt-get remove java-common

Installation DAPNET-Core

Create a new user called dapnet

sudo adduser dapnet

Make a directory /opt/dapnet

sudo mkdir /opt/dapnet

Make dapnet the owner of this directory

sudo chown dapnet /opt/dapnet

Change to user dapnet. If you don't have a user dapnet on your system, make one. If you don't know how, ask google.

sudo su dapnet

Change to

cd /opt/dapnet

and download the newest version from github.

git clone https://github.com/DecentralizedAmateurPagingNetwork/Core.git
git clone https://github.com/DecentralizedAmateurPagingNetwork/Web.git

Compile the Core:

cd Core
mvn clean package

The compiled files are now in the directory /opt/dapnet/Core/target. In order not to loose your config every time you recompile a new version make a directory named local

mkdir /opt/dapnet/Core/local

Generate three more dircetories

mkdir /opt/dapnet/Core/local/config
mkdir /opt/dapnet/Core/local/data
mkdir /opt/dapnet/Core/local/logs

Copy the example config files to /opt/dapnet/Core/local/config:

cp /opt/dapnet/Core/example_config/* /opt/dapnet/Core/local/config

Edit /opt/dapnet/Core/local/config/ClusterConfig.xml

<TCPPING initial_hosts="44.225.164.27[7800],44.225.164.162[7800]"

If the Core is behind NAT, activate the following section by removing the <!– and –> and enter your outbound HAMNET-IP.

<!-- FOR CORE BEHIND NAT USE
   <TCP bind_port="7800"
         external_addr="44.225.x.x"
         loopback="true"/>
-->

If you want the Core to bind to a specific address you can extend the TCP config

<TCP bind_port="7800" bind_addr="127.0.0.1" />

Contact us or one of the existing Core sysops to have your node added and get the password.

We assume here the password is „geheim“. So put the real one in the line:

auth_value="geheim"/>

At the bottom, put the callsign of the core in lowercase. The example here ist db0abc. Enter the one that is registered in the DAPNET. Use lowercase letters.

<pbcast.GMS name="db0abc@DAPNET"

That's all for now.

Alternative 1 to run the Node

Change to

cd /opt/dapnet/Core/local

and start a screen, so the program keeps running even if your SSH connection is closed. Install screen if not already installed.

sudo apt-get install screen

Run the screen

screen

You can leave the screen with CTRL+A D. New attachment to the screen with screen -r .

Start the core:

cd /opt/dapnet/Core/local
java -Dlog4j.configurationFile=../local/config/LogSettings_REST.xml -jar ../target/dapnet-core.jar

Replace the jar filename with the right one you just compiled. It may change in the development process.

Alternative 2 to run the Node

If you don't like the screen and better want a systemd service to start at boot time, have a look at

https://github.com/DecentralizedAmateurPagingNetwork/Core/tree/master/util/systemd

Important information on the connection with other Cores

All cores have to be able to reach each other directly by HAMNET IPs (44.0.0.0/8). If you do not have native HAMNET access, consider the PPTP manual and ask us for a static IP and user/password combination.

Installation of DAPNET-Web

The source code is already downloaded to

/opt/dapnet/Web

. Now install the apache2 webserver and the php module if not already present.

apt-get install apache2

Edit

/etc/apache2/sites-available/000-default.conf

and change

DocumentRoot dist

Insert below this line:

<Directory /opt/dapnet/Web/dist>
                Options Indexes FollowSymLinks
                AllowOverride None
                Require all granted
</Directory>

Restart the apache.

sudo service apache2 restart

Change to

cd /opt/dapnet/Web

and follow the instructions on Github.

Now the web interface is accessable on http://YOURURL .

Hint to run the REST-API on the same HTTP Port

Normally, the REST-API runs on port 8080. If you just have port 80 open for your website and don't want to add port 8080, you can use the Apache webserver as a proxy to process the API requests.

Add to your apache config:

        ProxyPass "/api" "http://URLOFYOURCORE:8080
        ProxyPassReverse "/api" "http://URLOFYOURCORE:8080"

In the settings of the DAPNET-WEG, enter in /src/store/defaultUrls.json the API URL to

    "api": "http://YOURWEBSITEURL/api",

Restart the apache and build the website again:

sudo systemctl restart apache2
cd /opt/dapnet/Web/
npm run build

First Steps

Ask us for your personal login data and happy paging.

dapnetnodeinstall.txt · Zuletzt geändert: 2018/10/23 09:22 von df2et