You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+92-18Lines changed: 92 additions & 18 deletions
Original file line number
Diff line number
Diff line change
@@ -14,15 +14,15 @@ Unit Test Code Coverage Status - TBD
14
14
15
15
### Docs - FIXME: Update docs!
16
16
17
-
For more details on configuration and functionality check out our [wiki](http://mantis.readthedocs.io) (also at [wiki](https://github.com/input-output-hk/mantis/wiki))
17
+
For more details on configuration and functionality check out our [website](https://docs.mantisclient.io/first-steps/getting-started) and [documentation](https://docs.mantisclient.io/first-steps/getting-started)
18
18
19
19
### Download the client
20
20
21
21
The latest release can be downloaded from [here](https://github.com/input-output-hk/mantis/releases)
22
22
23
23
### Command line version
24
24
25
-
You can use generic launcher with appropriate parameter to connect with pre-configured network, it can be found in `bin` directory.
25
+
In the `bin` directory, you can find the generic launcher. To connect to a pre-configured network just pass the network name as a parameter.
26
26
27
27
Example:
28
28
-`./bin/mantis-launcher etc` - for joining Ethereum Classic network
@@ -55,7 +55,7 @@ Possible networks: `etc`, `eth`, `mordor`, `testnet-internal`
Setup a dashboard using Prometheus and Grafana, popular choice of monitoring stack.
139
-
Before that you need enable the metrics in the file “metrics.conf”, setting mantis.metrics.enabled=true.
138
+
A docker-compose setup using Prometheus and Grafana, and a preconfigured dashboard, is available.
139
+
As a precondition you need to have docker and sbt installed.
140
+
Before running the script, you need to enable metrics by editing the file `metrics.conf` and setting `mantis.metrics.enabled=true`
140
141
141
-
You can start Docker Compose initializing Prometheus and Grafana with a preconfigured dashboard.
142
-
For build the monitoring, you need to run the following script: `./docker/monitoring/build.sh`
143
-
This script prepares a docker image of mantis. And as a precondition you need to have installed docker-compose and sbt.
142
+
To build the monitoring, run the following script at `./docker/mantis/build.sh`.
143
+
This script builds a docker image of mantis using the local sources and starts the docker-compose.
144
144
145
-
We can see the dashboard called "Mantis" at URL: http://localhost:3000 using user and password: admin and admin
145
+
Grafana will be available at http://localhost:3000(using user and password: admin and admin) with a dashboard called `Mantis`.
146
146
147
147
148
148
### TLS setup
149
149
150
150
Both the JSON RPC (on the node and faucet) can be additionally protected using TLS.
151
-
On the development environment it's already properly configured with a development certificate.
151
+
The development environment it already properly configured with a development certificate.
152
152
153
153
#### Generating a new certificate
154
154
@@ -159,7 +159,9 @@ If a new certificate is required, create a new keystore with a certificate by ru
159
159
1. Configure the certificate and password file to be used at `mantis.network.rpc.http.certificate` key on the `application.conf` file:
160
160
161
161
keystore-path: path to the keystore storing the certificates (if generated through our script they are by default located in "./tls/mantisCA.p12")
162
+
162
163
keystore-type: type of certificate keystore being used (if generated through our script use "pkcs12")
164
+
163
165
password-file: path to the file with the password used for accessing the certificate keystore (if generated through our script they are by default located in "./tls/password")
164
166
2. Enable TLS in specific config:
165
167
- For JSON RPC: `mantis.network.rpc.http.mode=https`
@@ -168,18 +170,90 @@ If a new certificate is required, create a new keystore with a certificate by ru
168
170
169
171
1. Configure the certificate and password file to be used at `mantis.network.rpc.http.certificate` key on the `faucet.conf` file:
170
172
171
-
keystore-path: path to the keystore storing the certificates (if generated through our script they are by default located in "./tls/mantisCA.p12")
172
-
keystore-type: type of certificate keystore being used (if generated through our script use "pkcs12")
173
-
password-file: path to the file with the password used for accessing the certificate keystore (if generated through our script they are by default located in "./tls/password")
173
+
keystore-path: path to the keystore storing the certificates (if generated through our script they are by default located in "./tls/mantisCA.p12")
174
+
175
+
keystore-type: type of certificate keystore being used (if generated through our script use "pkcs12")
176
+
177
+
password-file: path to the file with the password used for accessing the certificate keystore (if generated through our script they are by default located in "./tls/password")
174
178
2. Enable TLS in specific config:
175
-
- For JSON RPC: `mantis.network.rpc.http.mode=https`
176
-
3. Configure the certificate used from RpcClient to connect with the node. Necessary if the node uses http secure.
179
+
- For JSON RPC: `mantis.network.rpc.http.mode=https`
180
+
3. Configure the certificate used from RpcClient to connect with the node. Necessary if the node uses http secure.
177
181
This certificate and password file to be used at `faucet.rpc-client.certificate` key on the `faucet.conf` file:
178
182
179
-
keystore-path: path to the keystore storing the certificates
180
-
keystore-type: type of certificate keystore being used (if generated through our script use "pkcs12")
181
-
password-file: path to the file with the password used for accessing the certificate keystore
183
+
keystore-path: path to the keystore storing the certificates
184
+
keystore-type: type of certificate keystore being used (if generated through our script use "pkcs12")
185
+
password-file: path to the file with the password used for accessing the certificate keystore
186
+
187
+
### Faucet setup and testing
188
+
1. First start a client node using the docker-compose, by running the script found at `./docker/mantis/build.sh`
189
+
Modify the script before running it by adding the `volumes` and `command` sections to mantis configuration:
190
+
```
191
+
mantis:
192
+
image: mantis:latest
193
+
ports:
194
+
- 8546:8546
195
+
- 13798:13798
196
+
- 9095:9095
197
+
networks:
198
+
- mantis-net
199
+
volumes:
200
+
- $HOME/.mantis:/home/demiourgos728/.mantis/
201
+
command: -Dconfig.file=./conf/sagano.conf
202
+
```
203
+
204
+
2. Create a wallet address. Run the following curl command, replacing `<password>` by a password of your choice:
205
+
```
206
+
curl --request POST \
207
+
--url http://127.0.0.1:8546/ \
208
+
--header 'Cache-Control: no-cache' \
209
+
--header 'Content-Type: application/json' \
210
+
--data '{
211
+
"jsonrpc": "2.0",
212
+
"method": "personal_newAccount",
213
+
"params": ["<password>"],
214
+
"id": 1
215
+
}'
216
+
```
217
+
218
+
You will receive a response like this:
219
+
```
220
+
{"jsonrpc":"2.0","result":"<address>","id":1}
221
+
```
222
+
223
+
3. Modify `src/universal/conf/faucet.conf` file, config your account address created in the previous step. with the password choosen by you:
224
+
```
225
+
wallet-address = "<address>"
226
+
wallet-password = "<password>"
227
+
```
228
+
229
+
4. Now check the `keystore` folder in `~/.mantis/testnet-internal-nomad/keystore`.
230
+
Inside you will find a key generate with the curl request sent in step `2.`. Copy that file to `~/.mantis-faucet/keystore/`:
0 commit comments