kopia lustrzana https://github.com/linuxserver/docker-documentation
Bot Updating Documentation
rodzic
02f0628768
commit
a508aa29b5
|
@ -1,15 +1,14 @@
|
|||
# [linuxserver/nano](https://github.com/linuxserver/docker-nano)
|
||||
|
||||
[![GitHub Stars](https://img.shields.io/github/stars/linuxserver/docker-nano.svg?style=flat-square&color=E68523&logo=github&logoColor=FFFFFF)](https://github.com/linuxserver/docker-nano)
|
||||
[![GitHub Release](https://img.shields.io/github/release/linuxserver/docker-nano.svg?style=flat-square&color=E68523&logo=github&logoColor=FFFFFF)](https://github.com/linuxserver/docker-nano/releases)
|
||||
[![GitHub Package Repository](https://img.shields.io/static/v1.svg?style=flat-square&color=E68523&label=linuxserver.io&message=GitHub%20Package&logo=github&logoColor=FFFFFF)](https://github.com/linuxserver/docker-nano/packages)
|
||||
[![GitLab Container Registry](https://img.shields.io/static/v1.svg?style=flat-square&color=E68523&label=linuxserver.io&message=GitLab%20Registry&logo=gitlab&logoColor=FFFFFF)](https://gitlab.com/Linuxserver.io/docker-nano/container_registry)
|
||||
[![Quay.io](https://img.shields.io/static/v1.svg?style=flat-square&color=E68523&label=linuxserver.io&message=Quay.io)](https://quay.io/repository/linuxserver.io/nano)
|
||||
[![MicroBadger Layers](https://img.shields.io/microbadger/layers/linuxserver/nano.svg?style=flat-square&color=E68523)](https://microbadger.com/images/linuxserver/nano "Get your own version badge on microbadger.com")
|
||||
[![Docker Pulls](https://img.shields.io/docker/pulls/linuxserver/nano.svg?style=flat-square&color=E68523&label=pulls&logo=docker&logoColor=FFFFFF)](https://hub.docker.com/r/linuxserver/nano)
|
||||
[![Docker Stars](https://img.shields.io/docker/stars/linuxserver/nano.svg?style=flat-square&color=E68523&label=stars&logo=docker&logoColor=FFFFFF)](https://hub.docker.com/r/linuxserver/nano)
|
||||
[![Build Status](https://ci.linuxserver.io/view/all/job/Docker-Pipeline-Builders/job/docker-nano/job/master/badge/icon?style=flat-square)](https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-nano/job/master/)
|
||||
[![](https://lsio-ci.ams3.digitaloceanspaces.com/linuxserver/nano/latest/badge.svg)](https://lsio-ci.ams3.digitaloceanspaces.com/linuxserver/nano/latest/index.html)
|
||||
[![GitHub Stars](https://img.shields.io/github/stars/linuxserver/docker-nano.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&logo=github)](https://github.com/linuxserver/docker-nano)
|
||||
[![GitHub Release](https://img.shields.io/github/release/linuxserver/docker-nano.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&logo=github)](https://github.com/linuxserver/docker-nano/releases)
|
||||
[![GitHub Package Repository](https://img.shields.io/static/v1.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=linuxserver.io&message=GitHub%20Package&logo=github)](https://github.com/linuxserver/docker-nano/packages)
|
||||
[![GitLab Container Registry](https://img.shields.io/static/v1.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=linuxserver.io&message=GitLab%20Registry&logo=gitlab)](https://gitlab.com/Linuxserver.io/docker-nano/container_registry)
|
||||
[![MicroBadger Layers](https://img.shields.io/microbadger/layers/linuxserver/nano.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge)](https://microbadger.com/images/linuxserver/nano "Get your own version badge on microbadger.com")
|
||||
[![Docker Pulls](https://img.shields.io/docker/pulls/linuxserver/nano.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=pulls&logo=docker)](https://hub.docker.com/r/linuxserver/nano)
|
||||
[![Docker Stars](https://img.shields.io/docker/stars/linuxserver/nano.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=stars&logo=docker)](https://hub.docker.com/r/linuxserver/nano)
|
||||
[![Jenkins Build](https://img.shields.io/jenkins/build?labelColor=555555&logoColor=ffffff&style=for-the-badge&jobUrl=https%3A%2F%2Fci.linuxserver.io%2Fjob%2FDocker-Pipeline-Builders%2Fjob%2Fdocker-nano%2Fjob%2Fmaster%2F&logo=jenkins)](https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-nano/job/master/)
|
||||
[![LSIO CI](https://img.shields.io/badge/dynamic/yaml?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=CI&query=CI&url=https%3A%2F%2Flsio-ci.ams3.digitaloceanspaces.com%2Flspipepr%2Fnano%2Flatest%2Fci-status.yml)](https://lsio-ci.ams3.digitaloceanspaces.com/linuxserver/nano/latest/index.html)
|
||||
|
||||
[Nano](https://nano.org/) is a digital payment protocol designed to be accessible and lightweight, with a focus on removing inefficiencies present in other cryptocurrencies. With ultrafast transactions and zero fees on a secure, green and decentralized network, this makes Nano ideal for everyday transactions.
|
||||
|
||||
|
@ -27,6 +26,14 @@ The architectures supported by this image are:
|
|||
| x86-64 | amd64-latest |
|
||||
| arm64 | arm64v8-latest |
|
||||
|
||||
## Version Tags
|
||||
|
||||
This image provides various versions that are available via tags. `latest` tag usually provides the latest stable version. Others are considered under development and caution must be exercised when using them.
|
||||
|
||||
| Tag | Description |
|
||||
| :----: | --- |
|
||||
| latest | Stable Nano releases |
|
||||
| beta | Beta Nano releases |
|
||||
|
||||
## Usage
|
||||
|
||||
|
@ -45,7 +52,7 @@ docker create \
|
|||
-e LIVE_GENESIS_ACCOUNT=nano_xxxxxx `#optional` \
|
||||
-e LIVE_GENESIS_WORK=WORK_FOR_BLOCK `#optional` \
|
||||
-e LIVE_GENESIS_SIG=BLOCK_SIGNATURE `#optional` \
|
||||
-e CLI_OPTIONS='--config node.receive_minimum = "1000000000000000000000000"' `#optional` \
|
||||
-e CLI_OPTIONS=--config node.enable_voting=true `#optional` \
|
||||
-e LMDB_BOOTSTRAP_URL=http://example.com/Nano_64_version_20.7z `#optional` \
|
||||
-p 7075:7075/udp \
|
||||
-p 7075:7075/tcp \
|
||||
|
@ -77,7 +84,7 @@ services:
|
|||
- LIVE_GENESIS_ACCOUNT=nano_xxxxxx #optional
|
||||
- LIVE_GENESIS_WORK=WORK_FOR_BLOCK #optional
|
||||
- LIVE_GENESIS_SIG=BLOCK_SIGNATURE #optional
|
||||
- CLI_OPTIONS='--config node.receive_minimum = "1000000000000000000000000"' #optional
|
||||
- CLI_OPTIONS=--config node.enable_voting=true #optional
|
||||
- LMDB_BOOTSTRAP_URL=http://example.com/Nano_64_version_20.7z #optional
|
||||
volumes:
|
||||
- /path/to/data:/config
|
||||
|
@ -115,17 +122,34 @@ Docker images are configured using parameters passed at runtime (such as those a
|
|||
| `LIVE_GENESIS_ACCOUNT=nano_xxxxxx` | Genesis block account |
|
||||
| `LIVE_GENESIS_WORK=WORK_FOR_BLOCK` | Genesis block proof of work |
|
||||
| `LIVE_GENESIS_SIG=BLOCK_SIGNATURE` | Genesis block signature |
|
||||
| `CLI_OPTIONS='--config node.receive_minimum = "1000000000000000000000000"'` | Node run command cli args |
|
||||
| `CLI_OPTIONS=--config node.enable_voting=true` | Node run command cli args |
|
||||
| `LMDB_BOOTSTRAP_URL=http://example.com/Nano_64_version_20.7z` | HTTP/HTTPS endpoint to download a 7z file with the data.ldb to bootstrap to this node |
|
||||
|
||||
### Volume Mappings (`-v`)
|
||||
|
||||
| Volume | Function |
|
||||
| :----: | --- |
|
||||
| `/config` | Database and Radarr configs |
|
||||
| `/config` | Main storage for config and blockchain |
|
||||
|
||||
|
||||
|
||||
## Environment variables from files (Docker secrets)
|
||||
|
||||
You can set any environment variable from a file by using a special prepend `FILE__`.
|
||||
|
||||
As an example:
|
||||
|
||||
```
|
||||
-e FILE__PASSWORD=/run/secrets/mysecretpassword
|
||||
```
|
||||
|
||||
Will set the environment variable `PASSWORD` based on the contents of the `/run/secrets/mysecretpassword` file.
|
||||
|
||||
## Umask for running applications
|
||||
|
||||
For all of our images we provide the ability to override the default umask settings for services started within the containers using the optional `-e UMASK=022` setting.
|
||||
Keep in mind umask is not chmod it subtracts from permissions based on it's value it does not add. Please read up [here](https://en.wikipedia.org/wiki/Umask) before asking for support.
|
||||
|
||||
|
||||
## User / Group Identifiers
|
||||
|
||||
|
@ -188,7 +212,7 @@ The default proxy config is stored in `/config/rpc-proxy.json`:
|
|||
"count":"64"
|
||||
},
|
||||
"pending":{
|
||||
"count":"64"
|
||||
"count":"8"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -207,45 +231,48 @@ We will pass the `CLI_OPTIONS` to the node, here is a run command example:
|
|||
|
||||
```
|
||||
-e CLI_OPTIONS='--config node.preconfigured_peers=["peering.yourhost.com","peering.yourhost2.com"] \
|
||||
--config node.receive_minimum = "1000000000000000000000000"\
|
||||
--config node.enable_voting=true'
|
||||
```
|
||||
|
||||
There are many options to know here to run an actual live node especially peering and voting, again please review the docs if you plan to run something outside of a local setup.
|
||||
|
||||
### Quickstart Guide
|
||||
If you just want to see some numbers on a screen you can run a couple local nodes capable of having our light wallet pointed to. In this example we will be running the containers ephemerally and using a minimum two node setup. You can technically run with a single node, but in any network you should never publish the RPC port (even firewalled through our proxy) of the voting representative that has a wallet unlocked on disk.
|
||||
|
||||
First run the principle node:
|
||||
Here we are going to cover the bare minimum commands needed to spinup a local payment network and wallet.
|
||||
|
||||
First spinup your containers:
|
||||
```
|
||||
docker run --rm -it \
|
||||
-e CLI_OPTIONS='--config node.enable_voting=true' \
|
||||
-p 7075:7075/udp \
|
||||
-p 7075:7075/tcp \
|
||||
linuxserver/nano bash
|
||||
docker run -d \
|
||||
--name node \
|
||||
-e CLI_OPTIONS='--config node.enable_voting=true' \
|
||||
-p 7076:3000 \
|
||||
--restart unless-stopped \
|
||||
linuxserver/nano
|
||||
```
|
||||
```
|
||||
docker run -d \
|
||||
--name=wallet \
|
||||
-p 80:80 \
|
||||
--restart unless-stopped \
|
||||
linuxserver/nano-wallet
|
||||
```
|
||||
Then unlock the Genesis funds on the local node to allow it to confirm transactions:
|
||||
```
|
||||
docker exec -it node bash
|
||||
root@f1df092971f0:/# curl -d '{ "action": "wallet_create" }' localhost:7076
|
||||
{
|
||||
"wallet": "A3D63F1B28AC68BCD9E0FF74278C7984A36841C803EF1A81DF92BCD6E3BB18F9"
|
||||
}
|
||||
root@f1df092971f0:/# curl -d '{ "action": "wallet_add", "wallet": "A3D63F1B28AC68BCD9E0FF74278C7984A36841C803EF1A81DF92BCD6E3BB18F9", "key": "0000000000000000000000000000000000000000000000000000000000000000" }' localhost:7076
|
||||
{
|
||||
"account": "nano_18gmu6engqhgtjnppqam181o5nfhj4sdtgyhy36dan3jr9spt84rzwmktafc"
|
||||
}
|
||||
```
|
||||
|
||||
Then run a local peer to connect up to it acting as an RPC proxy:
|
||||
Here we are using the default private key of `0000000000000000000000000000000000000000000000000000000000000000` for the image.
|
||||
Navigate to http://localhost/#/localhost and enter this key. You should be greeted by the genesis account wallet with 340.28 Million Nano.
|
||||
|
||||
```
|
||||
docker run --rm -it \
|
||||
-p 7076:3000 \
|
||||
-p 7077:3001 \
|
||||
-e PEER_HOST=REPLACE_WITH_LOCAL_IP \
|
||||
linuxserver/nano bash
|
||||
```
|
||||
|
||||
Once both are up and running send some wallet RPC commands inside the voting principle node to unlock the Genesis wallet:
|
||||
|
||||
```
|
||||
curl -d '{ "action": "wallet_create" }' localhost:7076
|
||||
curl -d '{ "action": "wallet_add", "wallet": "REPLACE_WITH_WALLET_ID", "key": "0000000000000000000000000000000000000000000000000000000000000000" }' localhost:7076
|
||||
```
|
||||
|
||||
You can now use the default private key `0000000000000000000000000000000000000000000000000000000000000000` in the web wallet to manage the genesis funds. By acessing the hosted live wallet http://wallet.linuxserver.io/?node=REPLACE_WITH_LOCAL_IP or run a simple nginx container located [here](https://github.com/linuxserver/docker-nano-wallet) to host a wallet locally.
|
||||
|
||||
By default you will be running an insecure centralized network with a single voting representative and a zero security private key using the commands above. To spinup a standard private or even public network you should read up on Nano's documentation [HERE](https://docs.nano.org/) and continue reading the network design section below.
|
||||
From here you can generate new wallets from the home screen and send/receive funds on your local network. Now you will be running an insecure centralized network with a single voting representative and a zero security private key using the commands above. To spinup a standard private or even public network you should read up on Nano's documentation [HERE](https://docs.nano.org/) and continue reading the network design section below.
|
||||
|
||||
### Network design
|
||||
There are 4 main concepts to grasp from a network standpoint as far as types of endpoints. Before we get started here is a basic network diagram:
|
||||
|
@ -302,9 +329,32 @@ https://github.com/linuxserver/nano-wallet
|
|||
It is designed to be run 100% clientside in any web browser and use public RPC endpoints to hook into any network and conduct transactions by locally signing then publishing the result.
|
||||
This can be hosted locally with any simple webserver and pointed to a locally run peer, but for full functionality we reccomend providing a public Https URL with these files along with plugging in legitamite SSL certificates into your RPC endpoints running on 7077.
|
||||
|
||||
# Running a node on the LinuxServer network
|
||||
|
||||
We maintain our own network which users can get funds to transact on from our [Discord](https://discord.gg/YWrKVTn) server. If you would like to run a node on our network here is our Docker run command:
|
||||
```
|
||||
docker create \
|
||||
--name=lsio-node \
|
||||
-e PUID=1000 \
|
||||
-e PGID=1000 \
|
||||
-e TZ=Europe/London \
|
||||
-e PEER_HOST=peering.linuxserver.io \
|
||||
-e LIVE_GENESIS_PUB=79F2E157B5667F1C8B6CCB6DF691DAC032B85DEC39E231D29976DCED05F5B1BE \
|
||||
-e LIVE_GENESIS_ACCOUNT=nano_1yhkw7ducsmz5k7pskufytaxoi3kq3gyrgh489bbkxpwxn4zdefyn4rmrrkk \
|
||||
-e LIVE_GENESIS_WORK=c51204c6b69384cb \
|
||||
-e LIVE_GENESIS_SIG=90DDE7B4DC038811180FF5DDE8594F1774542A7AADE3DB71A57AA38A5AED42672E1E8D7ACFAC315BDB0EB5DCB542C610B9C49B2560AE575073855259AF065509 \
|
||||
-p 7075:7075/udp \
|
||||
-p 7075:7075/tcp \
|
||||
-p 7076:3000 \
|
||||
-p 7077:3001 \
|
||||
-v /path/to/data:/config \
|
||||
--restart unless-stopped \
|
||||
linuxserver/nano
|
||||
```
|
||||
|
||||
|
||||
## Docker Mods
|
||||
[![Docker Mods](https://img.shields.io/badge/dynamic/yaml?style=for-the-badge&color=E68523&label=mods&query=%24.mods%5B%27nano%27%5D.mod_count&url=https%3A%2F%2Fraw.githubusercontent.com%2Flinuxserver%2Fdocker-mods%2Fmaster%2Fmod-list.yml)](https://mods.linuxserver.io/?mod=nano "view available mods for this container.")
|
||||
[![Docker Mods](https://img.shields.io/badge/dynamic/yaml?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=mods&query=%24.mods%5B%27nano%27%5D.mod_count&url=https%3A%2F%2Fraw.githubusercontent.com%2Flinuxserver%2Fdocker-mods%2Fmaster%2Fmod-list.yml)](https://mods.linuxserver.io/?mod=nano "view available mods for this container.")
|
||||
|
||||
We publish various [Docker Mods](https://github.com/linuxserver/docker-mods) to enable additional functionality within the containers. The list of Mods available for this image (if any) can be accessed via the dynamic badge above.
|
||||
|
||||
|
@ -322,4 +372,5 @@ We publish various [Docker Mods](https://github.com/linuxserver/docker-mods) to
|
|||
|
||||
## Versions
|
||||
|
||||
* **28.05.20:** - Add beta tag.
|
||||
* **17.05.20:** - Initial Release.
|
||||
|
|
Ładowanie…
Reference in New Issue