Commit d36e0784 authored by Benoit Lavenier's avatar Benoit Lavenier

[fix] Broken links in the documentation web site - fix #36

parent af24c998
Pipeline #4201 passed with stage
in 30 seconds
Duniter4j
=========
Duniter4j is a Java Toolkit for [Duniter](http://duniter.org).
Cesium+ Pod
===========
Cesium+ pod is used by [Duniter](http://duniter.org)'s client applications ([Cesium](https://git.duniter.org/clients/cesium-grp/cesium), [WotMap](https://duniter.normandie-libre.fr/wotmap/), [WorldWotMap](https://zettascript.org/tux/g1/worldwotmap.html)) to store additional data **outside the blockchain** of the crypto-currency (Ğ1, Ğ1-test).
<img src="./src/site/resources/images/logos/logo_duniter.png"/>
> See the [documentation web site](http://doc.e-is.pro/duniter4j/)
Cesium+ Pod comes with a public RESTfull [HTTP API](./src/site/markdown/REST_API.html) to store and retrieve all this data.
It use [ElastiSearch](https://www.elastic.co/fr/products/elasticsearch) for storage and full-text capabilities.
## Modules
## Install
Duniter4j has tree main modules :
- `duniter4j-client`: [a command line tool](./src/site/markdown/CLI.md), to execute basic operation on a Duniter currency: transfer, view peers, ...
- `duniter4j-core-client`: [a Java API](./src/site/markdown/Java_API.md) to help Java developers to communicate with a Duniter network.
- `duniter4j-elasticsearch`: [a ElastiSearch node](./src/site/markdown/ES.md) used to store (with full-text capabilities) all blockchain data, and additional user data.
* It comes with an [HTTP API](./src/site/markdown/ES_API.md) to store and retrieve all this data.
* This API is used by [Cesium+](https://www.github.com/duniter/cesium) (a Duniter wallet).
Follow the [installation documentation](http://doc.e-is.pro/cesium-plus-pod/install.html) to install a Cesium+ Pod.
## Documentation
See the [documentation web site](http://doc.e-is.pro/cesium-plus-pod/) to learn how to contribute, build from source, etc.
# Tutoriel : Contribuer à Cesium+ Pod
## Introduction
Cet article est un tutoriel d'initiation au code source du logiciel Duniter4j.
......@@ -76,7 +77,7 @@ ce qui donne dans mon cas :
```
git clone git@git.duniter.org:clients/cesium-grp/cesium-plus-pod.git
Cloning into 'duniter4j'...
Cloning into 'cesium-plus-pod'...
(...)
Checking connectivity... done.
```
......@@ -139,13 +140,13 @@ Pour développer en Java, vous pouvez utiliser l'IDE de votre choix, par exemple
## Niveau III : maîtriser les commandes usuelles
Ce troisième niveau permet de découvrir les quelques commandes que vous utiliserez tout le temps si vous développez sur Duniter4j. Vous y apprendrez :
Ce troisième niveau permet de découvrir les quelques commandes que vous utiliserez tout le temps si vous développez sur Cesium+ Pod. Vous y apprendrez :
- à configurer le projet, notamment les paramètres réseau (du noeud ES, du noeud Duniter, etc.);
- à compiler le projet;
- à lancer votre noeud ElasticSearch avec le plugin Duniter4j;
- à lancer votre noeud ElasticSearch avec les plugins Cesium+ Pod;
### Configurer le projet
......@@ -249,7 +250,7 @@ Vous devriez avoir maintenant :
```bash
[2016-11-17 13:29:35,874][INFO ][transport ] [Att-Lass] publish_address {127.0.0.1:9300}, bound_addresses {[::1]:9300}, {127.0.0.1:9300}
[2016-11-17 13:29:35,882][INFO ][discovery ] [Att-Lass] duniter4j-elasticsearch-TEST/HjDNQrTTSuyfmzGEbY7qNQ
[2016-11-17 13:29:35,882][INFO ][discovery ] [Att-Lass] cesium-plus-pod-g1-TEST/HjDNQrTTSuyfmzGEbY7qNQ
[2016-11-17 13:29:38,956][INFO ][cluster.service ] [Att-Lass] new_master {Att-Lass}{HjDNQrTTSuyfmzGEbY7qNQ}{127.0.0.1}{127.0.0.1:9300}, reason: zen-disco-join(elected_as_master, [0] joins received)
[2016-11-17 13:29:38,990][INFO ][http ] [Att-Lass] publish_address {127.0.0.1:9200}, bound_addresses {[::1]:9200}, {127.0.0.1:9200}
[2016-11-17 13:29:38,991][INFO ][node ] [Att-Lass] started
......@@ -303,13 +304,9 @@ Dans le répertoire `cesium-plus-pod-core/src/main/java`, cherchez et répérez
* Il existe un service d'indexation par type de stockage. Par exemple : `BlockchainService`, `UserService`, etc.
Dans le répertoire `duniter4j-core-client/src/main/java`, cherchez et répérez dans le code :
* les services d'accès au réseau Duniter : package `org.duniter.core.client.service.bma`
### Aller plus loin dans le code
Duniter4j s'appuie sur ElasticSearch **en version 2.4**. D'excellentes documentations sont présentes sur le web : https://www.elastic.co/guide/en/elasticsearch/reference/2.3/index.html.
Cesium+ Pod s'appuie sur ElasticSearch **en version 2.4**. D'excellentes documentations sont présentes sur le web : https://www.elastic.co/guide/en/elasticsearch/reference/2.3/index.html.
## Niveau V : Requêtage sur ES API
......@@ -423,7 +420,7 @@ Duniter4j permet aussi de stocker et d'indexer les données hors BlockChain, com
- `/page/comment` : les commentaires sur les annonces
- `/subscription/record` : les abonnements aux services en ligne (par exemple les notifications par email)
> La document de l'API HTTP est disponible [ici](./ES_API.html).
> La document de l'API HTTP est disponible [ici](./REST_API.html).
### Requêtes sur `g1-test.data.duniter.fr`
......
......@@ -2,7 +2,7 @@
Welcome to **Cesium+ pod** web site !
Cesium+ pod is used by [Duniter](http://duniter.org)'s client applications ([Cesium](https://github.com/duniter/cesium), [WotMap](https://duniter.normandie-libre.fr/wotmap/)) to store additional data **outside the blockchain** of the crypto-currency (Ğ1, Ğ1-test).
Cesium+ pod is used by [Duniter](http://duniter.org)'s client applications ([Cesium](https://git.duniter.org/clients/cesium-grp/cesium), [WotMap](https://duniter.normandie-libre.fr/wotmap/), [WorldWotMap](https://zettascript.org/tux/g1/worldwotmap.html)) to store additional data **outside the blockchain** of the crypto-currency (Ğ1, Ğ1-test).
<img src="./images/logos/logo_200px.png"/>
......@@ -10,7 +10,7 @@ Cesium+ pod can store: user profiles, private & encrypted messages, invitations
## What is Cesium+ pod ?
Cesium+ pod use an [ElastiSearch](./ES.html) for storage and full-text capabilities.
Cesium+ pod use [ElastiSearch](https://www.elastic.co/fr/products/elasticsearch) for storage and full-text capabilities.
It comes with a public RESTfull [HTTP API](./REST_API.html) to store and retrieve all this data.
......
# ElastiSearch node
# Install
## Install
## Prerequisites
### Prerequisites
#### Install Java
### Install Java
- Install Java JRE 8 or more.
......@@ -37,9 +35,9 @@ sudo make && sudo make check
sudo make install
```
### Install bundle (ElasticSearch + Duniter4j)
### Install bundle (ElasticSearch + Cesium+ Pod)
- Download [lastest release](https://github.com/duniter/duniter4j/releases) of file cesium-plus-pod-X.Y-standalone.zip
- Download [lastest release](https://github.com/duniter/cesium-plus-pod/releases) of file cesium-plus-pod-X.Y-standalone.zip
- Unzip
......@@ -52,7 +50,7 @@ cd cesium-plus-pod-X.Y/config
```yml
# Your ES cluster name
cluster.name: duniter4j-elasticsearch
cluster.name: cesium-plus-pod-g1-TEST
# Use a descriptive name for the node:
node.name: ES-NODE-1
......@@ -61,7 +59,7 @@ node.name: ES-NODE-1
network.host: 192.168.0.28
# Set a custom port for HTTP:
http.port: 9203
http.port: 9200
# Duniter node to connect with
duniter.host: g1-test.duniter.org
......@@ -87,17 +85,17 @@ Output example (on [G1-test](http://g1-test.duniter.fr) currency):
```bash
$ ./elasticsearch
[2016-09-24 00:16:45,803][INFO ][node ] [ES-NODE-1] version[2.3.3], pid[15365], build[218bdf1/2016-05-17T15:40:04Z]
[2016-09-24 00:16:45,803][INFO ][node ] [ES-NODE-1] version[2.4.6], pid[15365], build[218bdf1/2016-05-17T15:40:04Z]
[2016-09-24 00:16:45,804][INFO ][node ] [ES-NODE-1] initializing ...
[2016-09-24 00:16:46,257][INFO ][plugins ] [ES-NODE-1] modules [reindex, lang-expression, lang-groovy], plugins [mapper-attachments, duniter4j-elasticsearch], sites [duniter4j-elasticsearch]
[2016-09-24 00:16:46,257][INFO ][plugins ] [ES-NODE-1] modules [reindex, lang-expression, lang-groovy], plugins [mapper-attachments, cesium-plus-pod-g1-TEST], sites [cesium-plus-pod-g1-TEST]
[2016-09-24 00:16:46,270][INFO ][env ] [ES-NODE-1] using [1] data paths, mounts [[/home (/dev/mapper/isw_defjaaicfj_Volume1p1)]], net usable_space [1tb], net total_space [1.7tb], spins? [possibly], types [ext4]
[2016-09-24 00:16:46,270][INFO ][env ] [ES-NODE-1] heap size [989.8mb], compressed ordinary object pointers [true]
[2016-09-24 00:16:47,757][INFO ][node ] [ES-NODE-1] initialized
[2016-09-24 00:16:47,757][INFO ][node ] [ES-NODE-1] starting ...
[2016-09-24 00:16:47,920][INFO ][transport ] [ES-NODE-1] publish_address {192.168.0.5:9300}, bound_addresses {192.168.0.5:9300}
[2016-09-24 00:16:47,924][INFO ][discovery ] [ES-NODE-1] duniter4j-elasticsearch/jdzzh_jUTbuN26Enl-9whQ
[2016-09-24 00:16:47,924][INFO ][discovery ] [ES-NODE-1] cesium-plus-pod-g1-TEST/jdzzh_jUTbuN26Enl-9whQ
[2016-09-24 00:16:50,982][INFO ][cluster.service ] [ES-NODE-1] detected_master {EIS-DEV}{FD0IzkxETM6tyOqzrKuVYw}{192.168.0.28}{192.168.0.28:9300}, added {{EIS-DEV}{FD0IzkxETM6tyOqzrKuVYw}{192.168.0.28}{192.168.0.28:9300},}, reason: zen-disco-receive(from master [{EIS-DEV}{FD0IzkxETM6tyOqzrKuVYw}{192.168.0.28}{192.168.0.28:9300}])
[2016-09-24 00:16:53,570][INFO ][http ] [ES-NODE-1] publish_address {192.168.0.5:9203}, bound_addresses {192.168.0.5:9203}
[2016-09-24 00:16:53,570][INFO ][http ] [ES-NODE-1] publish_address {192.168.0.5:9200}, bound_addresses {192.168.0.5:9200}
[2016-09-24 00:16:53,570][INFO ][node ] [ES-NODE-1] started
[2016-09-24 00:16:57,850][INFO ][node ] Checking Duniter indices...
[2016-09-24 00:16:57,859][INFO ][node ] Checking Duniter indices... [OK]
......@@ -110,21 +108,21 @@ $ ./elasticsearch
[2016-09-24 00:17:11,026][INFO ][duniter.blockchain ] [g1-gtest] [g1-test.duniter.org:10900] Indexing block #41282 - hash [00000AAD73B0E76B870E6779CD7ACCCE175802D7867C13B5C8ED077F380548C5]
```
### Test your node
## Test your node
#### Using a web browser
### Using a web browser
The following web address should works: http://localhost:9200/node/summary
#### Using Cesium
### Using Cesium
You should also be able to use your node in the [Cesium](https://github.com/duniter/cesium) application:
You should also be able to use your node in the [Cesium](https://git.duniter.org/clients/cesium-grp/cesium) application:
- in the Cesium+ settings, replace the data node address;
- in the Cesium+ extension settings, replace the data node address;
- check if graph and profile avatar are display correctly.
## Request the ES node
### Request the ES node
When a blockchain currency has been indexed, you can test some fun queries :
......@@ -158,10 +156,13 @@ curl -XGET 'http://localhost:9200/gtest/block/_search' -d '{
}'
```
## More documentation
More documentation can be found here :
More documentation here :
- Cesium+ Pod [development tutorial](./development_tutorial.html) (french);
- [a development tutorial](./development_tutorial.html) (french);
- Cesium+ Pod [RESTfull HTTP API](./REST_API.md);
- [ElasticSearch official web site](http://www.elastic.co/guide/en/elasticsearch/reference/1.3/docs-get.html#get-source-filtering)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment