From 09b15ae020ead3b0553beb1feaf5d2fe4daed707 Mon Sep 17 00:00:00 2001 From: serinko <97586125+serinko@users.noreply.github.com> Date: Tue, 1 Aug 2023 10:58:29 +0200 Subject: [PATCH] operators guide: add src/binaries/ files, fix links --- documentation/operators/src/SUMMARY.md | 6 +- .../operators/src/binaries/building-nym.html | 350 ++++++++++++++++++ .../operators/src/binaries/building-nym.md | 71 ++++ .../src/binaries/init-and-config.html | 290 +++++++++++++++ .../operators/src/binaries/init-and-config.md | 13 + .../src/binaries/pre-built-binaries.html | 286 ++++++++++++++ .../src/binaries/pre-built-binaries.md | 6 + .../src/binaries/version-compatiblity.md | 38 ++ .../operators/src/nodes/gateway-setup.md | 2 +- .../operators/src/nodes/mix-node-setup.md | 4 +- .../src/nodes/network-requester-setup.md | 2 +- .../operators/src/nodes/setup-guides.md | 8 +- .../operators/src/nodes/validator-setup.md | 10 +- .../operators/src/preliminary-steps.md | 2 +- 14 files changed, 1071 insertions(+), 17 deletions(-) create mode 100644 documentation/operators/src/binaries/building-nym.html create mode 100644 documentation/operators/src/binaries/building-nym.md create mode 100644 documentation/operators/src/binaries/init-and-config.html create mode 100644 documentation/operators/src/binaries/init-and-config.md create mode 100644 documentation/operators/src/binaries/pre-built-binaries.html create mode 100644 documentation/operators/src/binaries/pre-built-binaries.md create mode 100644 documentation/operators/src/binaries/version-compatiblity.md diff --git a/documentation/operators/src/SUMMARY.md b/documentation/operators/src/SUMMARY.md index 04d855952f..a3f55376c8 100644 --- a/documentation/operators/src/SUMMARY.md +++ b/documentation/operators/src/SUMMARY.md @@ -3,9 +3,9 @@ - [Introduction](introduction.md) # Binaries -- [Pre-built Binaries](../../docs/src/binaries/pre-built-binaries.md) -- [Building from Source](../../docs/src/binaries/building-nym.md) -- [Binary Initialisation and Configuration](../../docs/src/binaries/init-and-config.md) +- [Pre-built Binaries](./binaries/pre-built-binaries.md) +- [Building from Source](./binaries/building-nym.md) +- [Binary Initialisation and Configuration](./binaries/init-and-config.md) # Operators Guides diff --git a/documentation/operators/src/binaries/building-nym.html b/documentation/operators/src/binaries/building-nym.html new file mode 100644 index 0000000000..2f73af4b4f --- /dev/null +++ b/documentation/operators/src/binaries/building-nym.html @@ -0,0 +1,350 @@ + + + + + + Building from Source - Nym Operators Guides + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+ {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ +

Building from Source

+
+

Nym runs on Mac OS X, Linux, and Windows. All nodes except the Desktop Wallet and NymConnect on Windows should be considered experimental - it works fine if you’re an app developer but isn’t recommended for running nodes.

+
+

Building Nym

+

Nym has two main codebases:

+
    +
  • the Nym platform, written in Rust. This contains all of our code except for the validators.
  • +
  • the Nym validators, written in Go.
  • +
+
+

This page details how to build the main Nym platform code. If you want to build and run a validator, go here instead.

+
+

Prerequisites

+
    +
  • Debian/Ubuntu: pkg-config, build-essential, libssl-dev, curl, jq, git
  • +
+
apt install pkg-config build-essential libssl-dev curl jq git
+
+
    +
  • Arch/Manjaro: base-devel
  • +
+
pacman -S base-devel
+
+
    +
  • Mac OS X: pkg-config , brew, openss1, protobuf, curl, git +Running the following the script installs Homebrew and the above dependencies:
  • +
+
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
+
+
    +
  • Rust & cargo >= 1.66
  • +
+

We recommend using the Rust shell script installer. Installing cargo from your package manager (e.g. apt) is not recommended as the packaged versions are usually too old.

+

If you really don’t want to use the shell script installer, the Rust installation docs contain instructions for many platforms.

+

Download and build Nym binaries

+

The following commands will compile binaries into the nym/target/release directory:

+
rustup update
+git clone https://github.com/nymtech/nym.git
+cd nym
+
+git reset --hard # in case you made any changes on your branch
+git pull # in case you've checked it out before
+
+git checkout release/v1.1.22 # checkout to the latest release branch: `develop` will most likely be incompatible with deployed public networks
+
+cargo build --release # build your binaries with **mainnet** configuration
+NETWORK=sandbox cargo build --release # build your binaries with **sandbox** configuration
+
+

Quite a bit of stuff gets built. The key working parts are:

+ +

The repository also contains Typescript applications which aren’t built in this process. These can be built by following the instructions on their respective docs pages.

+ +
+

You cannot build from GitHub’s .zip or .tar.gz archive files on the releases page - the Nym build scripts automatically include the current git commit hash in the built binary during compilation, so the build will fail if you use the archive code (which isn’t a Git repository). Check the code out from github using git clone instead.

+
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + + + +
+ + diff --git a/documentation/operators/src/binaries/building-nym.md b/documentation/operators/src/binaries/building-nym.md new file mode 100644 index 0000000000..8610fcb63a --- /dev/null +++ b/documentation/operators/src/binaries/building-nym.md @@ -0,0 +1,71 @@ +# Building from Source + +> Nym runs on Mac OS X, Linux, and Windows. All nodes **except the Desktop Wallet and NymConnect** on Windows should be considered experimental - it works fine if you're an app developer but isn't recommended for running nodes. + +## Building Nym +Nym has two main codebases: + +- the [Nym platform](https://github.com/nymtech/nym), written in Rust. This contains all of our code _except_ for the validators. +- the [Nym validators](https://github.com/nymtech/nyxd), written in Go. + +> This page details how to build the main Nym platform code. **If you want to build and run a validator, [go here](../nodes/validator-setup.md) instead.** + +## Prerequisites +- Debian/Ubuntu: `pkg-config`, `build-essential`, `libssl-dev`, `curl`, `jq`, `git` + +``` +apt install pkg-config build-essential libssl-dev curl jq git +``` + +- Arch/Manjaro: `base-devel` + +``` +pacman -S base-devel +``` + +- Mac OS X: `pkg-config` , `brew`, `openss1`, `protobuf`, `curl`, `git` +Running the following the script installs Homebrew and the above dependencies: + +``` +/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" +``` + +- `Rust & cargo >= {{minimum_rust_version}}` + +We recommend using the [Rust shell script installer](https://www.rust-lang.org/tools/install). Installing cargo from your package manager (e.g. `apt`) is not recommended as the packaged versions are usually too old. + +If you really don't want to use the shell script installer, the [Rust installation docs](https://forge.rust-lang.org/infra/other-installation-methods.html) contain instructions for many platforms. + +## Download and build Nym binaries +The following commands will compile binaries into the `nym/target/release` directory: + +``` +rustup update +git clone https://github.com/nymtech/nym.git +cd nym + +git reset --hard # in case you made any changes on your branch +git pull # in case you've checked it out before + +git checkout release/{{platform_release_version}} # checkout to the latest release branch: `develop` will most likely be incompatible with deployed public networks + +cargo build --release # build your binaries with **mainnet** configuration +NETWORK=sandbox cargo build --release # build your binaries with **sandbox** configuration +``` + +Quite a bit of stuff gets built. The key working parts are: + +* [mix node](../nodes/mix-node-setup.md): `nym-mixnode` +* [gateway node](../nodes/gateway-setup.md): `nym-gateway` +* [websocket client](https://nymtech.net/docs/clients/websocket-client.html): `nym-client` +* [socks5 client](https://nymtech.net/docs/clients/socks5-client.html): `nym-socks5-client` +* [webassembly client](https://nymtech.net/docs/clients/webassembly-client.html): `webassembly-client` +* [network requester](../nodes/network-requester-setup.md): `nym-network-requester` +* [nym-cli tool](https://nymtech.net/docs/tools/nym-cli.html): `nym-cli` + +The repository also contains Typescript applications which aren't built in this process. These can be built by following the instructions on their respective docs pages. +* [Nym Wallet](https://nymtech.net/docs/wallet/desktop-wallet.html) +* [Nym Connect](https://nymtech.net/developers/quickstart/nymconnect-gui.html) +* [Network Explorer UI](https://nymtech.net/docs/explorers/mixnet-explorer.html) + +> You cannot build from GitHub's .zip or .tar.gz archive files on the releases page - the Nym build scripts automatically include the current git commit hash in the built binary during compilation, so the build will fail if you use the archive code (which isn't a Git repository). Check the code out from github using `git clone` instead. diff --git a/documentation/operators/src/binaries/init-and-config.html b/documentation/operators/src/binaries/init-and-config.html new file mode 100644 index 0000000000..147c89cc2d --- /dev/null +++ b/documentation/operators/src/binaries/init-and-config.html @@ -0,0 +1,290 @@ + + + + + + Binary Initialisation and Configuration - Nym Operators Guides + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+ {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ +

Binary Initialisation and Configuration

+

All Nym binaries must first be initialised with init before being run.

+

The init command is usually where you pass flags specifying configuration arguments such as the gateway you wish to communicate with, the ports you wish your binary to listen on, etc.

+

The init command will also create the necessary keypairs and configuration files at ~/.nym/<BINARY_TYPE>/<BINARY_ID>/ if these files do not already exist. It will not overwrite existing keypairs if they are present.

+

You can reconfigure your binaries at any time by editing the config file located at ~/.nym/<BINARY_TYPE>/<BINARY_ID>/config/config.toml and restarting the binary process.

+

Once you have run init, you can start your binary with the run command, usually only accompanied by the id of the binary that you specified.

+

This id is never transmitted over the network, and is used to select which local config and key files to use for startup.

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + + + +
+ + diff --git a/documentation/operators/src/binaries/init-and-config.md b/documentation/operators/src/binaries/init-and-config.md new file mode 100644 index 0000000000..e749662b8e --- /dev/null +++ b/documentation/operators/src/binaries/init-and-config.md @@ -0,0 +1,13 @@ +# Binary Initialisation and Configuration + +All Nym binaries must first be initialised with `init` before being `run`. + +The `init` command is usually where you pass flags specifying configuration arguments such as the gateway you wish to communicate with, the ports you wish your binary to listen on, etc. + +The `init` command will also create the necessary keypairs and configuration files at `~/.nym///` if these files do not already exist. **It will not overwrite existing keypairs if they are present.** + +You can reconfigure your binaries at any time by editing the config file located at `~/.nym///config/config.toml` and restarting the binary process. + +Once you have run `init`, you can start your binary with the `run` command, usually only accompanied by the `id` of the binary that you specified. + +This `id` is **never** transmitted over the network, and is used to select which local config and key files to use for startup. diff --git a/documentation/operators/src/binaries/pre-built-binaries.html b/documentation/operators/src/binaries/pre-built-binaries.html new file mode 100644 index 0000000000..3497c15d85 --- /dev/null +++ b/documentation/operators/src/binaries/pre-built-binaries.html @@ -0,0 +1,286 @@ + + + + + + Pre-built Binaries - Nym Operators Guides + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+ {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ + {comment} +
+ +

Pre-built Binaries

+

The Github releases page has pre-built binaries which should work on Ubuntu 20.04 and other Debian-based systems, but at this stage cannot be guaranteed to work everywhere.

+

If the pre-built binaries don’t work or are unavailable for your system, you will need to build the platform yourself.

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + + + +
+ + diff --git a/documentation/operators/src/binaries/pre-built-binaries.md b/documentation/operators/src/binaries/pre-built-binaries.md new file mode 100644 index 0000000000..269c26276c --- /dev/null +++ b/documentation/operators/src/binaries/pre-built-binaries.md @@ -0,0 +1,6 @@ +# Pre-built Binaries + +The [Github releases page](https://github.com/nymtech/nym/releases) has pre-built binaries which should work on Ubuntu 20.04 and other Debian-based systems, but at this stage cannot be guaranteed to work everywhere. + +If the pre-built binaries don't work or are unavailable for your system, you will need to build the platform yourself. + diff --git a/documentation/operators/src/binaries/version-compatiblity.md b/documentation/operators/src/binaries/version-compatiblity.md new file mode 100644 index 0000000000..67e8a71ce6 --- /dev/null +++ b/documentation/operators/src/binaries/version-compatiblity.md @@ -0,0 +1,38 @@ +# Version Compatibility Table + +There are numerous components to Nym which are released independently of one another aside from when breaking changes occur in the [core platform code](https://github.com/nymtech/nym/) - mix nodes, gateways, network requesters, and clients. + +Whilst in general it recommended to be running the most recent version of any software, if you cannot do that for whatever reason this table will tell you which versions of different components are mutually compatible with which platform code releases. + + +| Core Platform | SDK | Wallet | NymConnect | Network Explorer | Mixnet contract | Vesting contract | +| ---------------- | ------------- | --------------- | --------------- | ---------------- | --------------- | ---------------- | +| 1.1.13 - 1.1.14* | 1.1.7 | 1.1.12 - 1.1.13 | 1.1.12 - 1.1.13 | 1.1.2 | 1.2.0 - 1.3.0 | 1.2.0 - 1.3.0 | +| 1.1.1 - 1.1.12 | 1.1.4 - 1.1.7 | 1.1.0 - 1.1.12 | 1.1.1 - 1.1.12 | 1.1.0 - 1.1.2 | 1.1.0 - 1.1.3 | 1.1.0 - 1.1.3 | +| 1.1.0 - 1.1.1 | 1.1.4 | 1.1.0 | 1.1.0 - 1.1.1 | 1.1.0 | 1.1.0 | 1.1.0 | +| 1.1.0 | x | 1.1.0 | 1.1.0 | 1.1.0 | 1.1.0 | 1.1.0 | + +`*` the `nym-mixnode` binary is currently one point ahead of the main platform release version + +> There are seperate changelogs for [`NymConnect`](https://github.com/nymtech/nym/blob/release/{{platform_release_version}}/nym-connect/CHANGELOG.md) and the [`Desktop Wallet`](https://github.com/nymtech/nym/blob/release/{{platform_release_version}}/nym-wallet/CHANGELOG.md). The changelog referenced below is for the core platform code. + +| Platform release changelog | +| ---------------------------------------------------------------------------------------- | +| 1.1.14 ([CHANGELOG](https://github.com/nymtech/nym/blob/release/v1.1.14/CHANGELOG.md)) | +| 1.1.13 ([CHANGELOG](https://github.com/nymtech/nym/blob/release/v1.1.13/CHANGELOG.md)) | +| 1.1.12 ([CHANGELOG](https://github.com/nymtech/nym/blob/release/v1.1.12/CHANGELOG.md)) | +| 1.1.11 ([CHANGELOG](https://github.com/nymtech/nym/blob/release/v1.1.11/CHANGELOG.md)) | +| 1.1.10 ([CHANGELOG](https://github.com/nymtech/nym/blob/release/v1.1.10/CHANGELOG.md)) | +| 1.1.9 ([CHANGELOG](https://github.com/nymtech/nym/blob/release/v1.1.9/CHANGELOG.md)) | +| 1.1.8 ([CHANGELOG](https://github.com/nymtech/nym/blob/release/v1.1.8/CHANGELOG.md)) | +| 1.1.7 ([CHANGELOG](https://github.com/nymtech/nym/blob/release/v1.1.7/CHANGELOG.md)) | +| 1.1.6 ([CHANGELOG](https://github.com/nymtech/nym/blob/release/v1.1.6/CHANGELOG.md)) | +| 1.1.5 ([CHANGELOG](https://github.com/nymtech/nym/blob/release/v1.1.5/CHANGELOG.md)) | +| 1.1.4 ([CHANGELOG](https://github.com/nymtech/nym/blob/release/v1.1.4/CHANGELOG.md)) | +| 1.1.3 ([CHANGELOG](https://github.com/nymtech/nym/blob/release/v1.1.3/CHANGELOG.md)) | +| 1.1.2 ([CHANGELOG](https://github.com/nymtech/nym/blob/release/v1.1.2/CHANGELOG.md)) | +| 1.1.1 ([CHANGELOG](https://github.com/nymtech/nym/blob/release/v1.1.1/CHANGELOG.md)) | +| 1.1.0 ([CHANGELOG](https://github.com/nymtech/nym/blob/release/v1.1.0/CHANGELOG.md)) | +| 1.0.2 ([CHANGELOG](https://github.com/nymtech/nym/blob/nym-binaries-1.0.2/CHANGELOG.md)) | +| 1.0.1 ([CHANGELOG](https://github.com/nymtech/nym/blob/nym-binaries-1.0.1/CHANGELOG.md)) | +| 1.0.0 ([CHANGELOG](https://github.com/nymtech/nym/blob/nym-binaries-1.0.0/CHANGELOG.md)) | diff --git a/documentation/operators/src/nodes/gateway-setup.md b/documentation/operators/src/nodes/gateway-setup.md index cdc72700e2..31cff54c22 100644 --- a/documentation/operators/src/nodes/gateway-setup.md +++ b/documentation/operators/src/nodes/gateway-setup.md @@ -4,7 +4,7 @@ TODO ---> # Gateways -> The Nym gateway was built in the [building nym](https://nymtech.net/operators/binaries/building-nym.html) section. If you haven't yet built Nym and want to run the code, go there first. +> The Nym gateway was built in the [building nym](../binaries/building-nym.md) section. If you haven't yet built Nym and want to run the code, go there first. > Any syntax in `<>` brackets is a user's unique variable. Exchange with a corresponding name without the `<>` brackets. diff --git a/documentation/operators/src/nodes/mix-node-setup.md b/documentation/operators/src/nodes/mix-node-setup.md index f8981fed68..0e711b6faf 100644 --- a/documentation/operators/src/nodes/mix-node-setup.md +++ b/documentation/operators/src/nodes/mix-node-setup.md @@ -1,6 +1,6 @@ # Mix Nodes -> The Nym mix node binary was built in the [building nym](https://nymtech.net/operators/binaries/building-nym.html) section. If you haven't yet built Nym and want to run the code, go there first. +> The Nym mix node binary was built in the [building nym](../binaries/building-nym.md) section. If you haven't yet built Nym and want to run the code, go there first. > Any syntax in `<>` brackets is a user's unique variable. Exchange with a corresponding name without the `<>` brackets. @@ -17,7 +17,7 @@ Make sure you do the preparation listed in the [preliminary steps page](../preli ## Mix node setup -Now that you have built the [codebase](https://nymtech.net/docs/binaries/building-nym.html), set up your [wallet](https://nymtech.net/docs/wallet/desktop-wallet.html), and have a VPS with the `nym-mixnode` binary, you can set up your mix node with the instructions below. +Now that you have built the [codebase](../binaries/building-nym.md), set up your [wallet](https://nymtech.net/docs/wallet/desktop-wallet.html), and have a VPS with the `nym-mixnode` binary, you can set up your mix node with the instructions below. To begin, move to `/taget/release` directory from which you run the node commands: diff --git a/documentation/operators/src/nodes/network-requester-setup.md b/documentation/operators/src/nodes/network-requester-setup.md index 33dc3c7c90..1cfee00e9b 100644 --- a/documentation/operators/src/nodes/network-requester-setup.md +++ b/documentation/operators/src/nodes/network-requester-setup.md @@ -4,7 +4,7 @@ TODO: ---> # Network Requesters -> The Nym gateway was built in the [building nym](https://nymtech.net/operators/binaries/building-nym.html) section. If you haven't yet built Nym and want to run the code, go there first. +> The Nym gateway was built in the [building nym](../binaries/building-nym.md) section. If you haven't yet built Nym and want to run the code, go there first. > Any syntax in `<>` brackets is a user's unique variable. Exchange with a corresponding name without the `<>` brackets. diff --git a/documentation/operators/src/nodes/setup-guides.md b/documentation/operators/src/nodes/setup-guides.md index b19cf07deb..37955a6549 100644 --- a/documentation/operators/src/nodes/setup-guides.md +++ b/documentation/operators/src/nodes/setup-guides.md @@ -1,13 +1,13 @@ # Node Setup Guides -To setup any type of Nym's node, start with building [Nym's platform](https://nymtech.net/docs/binaries/building-nym.html) on the machine (VPS) where you want to run the node. Nodes will need to be bond to Nym's wallet, setup one [here](https://nymtech.net/docs/wallet/desktop-wallet.html). +To setup any type of Nym's node, start with building [Nym's platform](../binaries/building-nym.md) on the machine (VPS) where you want to run the node. Nodes will need to be bond to Nym's wallet, setup one [here](https://nymtech.net/docs/wallet/desktop-wallet.html). This section contains setup guides for the following node types: * [Mix node](./mix-node-setup.md) diff --git a/documentation/operators/src/nodes/validator-setup.md b/documentation/operators/src/nodes/validator-setup.md index 6eafb49106..1c843a4cab 100644 --- a/documentation/operators/src/nodes/validator-setup.md +++ b/documentation/operators/src/nodes/validator-setup.md @@ -351,7 +351,7 @@ sudo ufw status Ports `22`, `80`, and `443` are for ssh, http, and https connections respectively. The rest of the ports are documented [here](https://docs.cosmos.network/main/core/grpc_rest). -For more information about your validator's port configuration, check the [validator port reference table](https://nymtech.net/operators/binaries/maintenance.html#ports) below. +For more information about your validator's port configuration, check the [validator port reference table](./maintenance.md#ports) below. > If you are planning to use [Cockpit](https://cockpit-project.org/) on your validator server then you will have defined a different `grpc` port in your `config.toml` above: remember to open this port as well. @@ -465,15 +465,15 @@ nyxd tx staking edit-validator With above command you can specify the `gpg` key last numbers (as used in `keybase`) as well as validator details and your email for security contact. ### Automating your validator with systemd -You will most likely want to automate your validator restarting if your server reboots. Checkout the [maintenance page](https://nymtech.net/operators/binaries/maintenance.html#systemd) with a quick tutorial. +You will most likely want to automate your validator restarting if your server reboots. Checkout the [maintenance page](./maintenance.md#systemd) with a quick tutorial. ### Installing and configuring nginx for HTTPS -If you want to set up a reverse proxying on the validator server to improve security and performance, using [nginx](https://www.nginx.com/resources/glossary/nginx/#:~:text=NGINX%20is%20open%20source%20software,%2C%20media%20streaming%2C%20and%20more.&text=In%20addition%20to%20its%20HTTP,%2C%20TCP%2C%20and%20UDP%20servers.), follow the manual on the [maintenance page](https://nymtech.net/operators/binaries/maintenance.html#setup). +If you want to set up a reverse proxying on the validator server to improve security and performance, using [nginx](https://www.nginx.com/resources/glossary/nginx/#:~:text=NGINX%20is%20open%20source%20software,%2C%20media%20streaming%2C%20and%20more.&text=In%20addition%20to%20its%20HTTP,%2C%20TCP%2C%20and%20UDP%20servers.), follow the manual on the [maintenance page](./maintenance.md#setup). ### Setting the ulimit -Linux machines limit how many open files a user is allowed to have. This is called a `ulimit`. We need to set it to a higher value than the default 1024. Follow the instructions in the [maintenance page](https://nymtech.net/operators/binaries/maintenance.html#Setting-the-ulimit) to change the `ulimit` value for validators. +Linux machines limit how many open files a user is allowed to have. This is called a `ulimit`. We need to set it to a higher value than the default 1024. Follow the instructions in the [maintenance page](./maintenance.md#Setting-the-ulimit) to change the `ulimit` value for validators. ## Using your validator ### Unjailing your validator @@ -502,7 +502,7 @@ nyxd tx slashing unjail ### Upgrading your validator -To upgrade your validator, follow the steps on the [maintenance page](https://nymtech.net/operators/binaries/maintenance.html#Setting-the-ulimit). +To upgrade your validator, follow the steps on the [maintenance page](./maintenance.md#setting-the-ulimit). #### Common reasons for your validator being jailed diff --git a/documentation/operators/src/preliminary-steps.md b/documentation/operators/src/preliminary-steps.md index 1c738b34bb..5cb76d8e19 100644 --- a/documentation/operators/src/preliminary-steps.md +++ b/documentation/operators/src/preliminary-steps.md @@ -1,6 +1,6 @@ # Preliminary Steps -> The Nym mixnode, gateway and network requester binaries were built in the [building nym](https://nymtech.net/docs/binaries/building-nym.html) section. If you haven't yet built Nym and want to run the code, go there first. +> The Nym mixnode, gateway and network requester binaries were built in the [building nym](../binaries/building-nym.md) section. If you haven't yet built Nym and want to run the code, go there first. ## Preliminary steps