waves_logo Docs
  • Node Owner Guide
    Node Owner Guide
  • Install Waves Node
    • Deploy Node in Docker
      Deploy Node in Docker
    • Install Node on Ubuntu
      Install Node on Ubuntu
    • Install Node on macOS
      Install Node on macOS
    • Install Node on Windows
      Install Node on Windows
    • Install from Source (Building SBT)
      Install from Source (Building SBT)
    • Deploy Node in Cloud
      • Deploy Node in Yandex.Cloud
        Deploy Node in Yandex.Cloud
      Deploy Node in Cloud
    Install Waves Node
  • Synchronize Waves Blockchain
    • Import/Export Blockchain
      Import/Export Blockchain
    • Download the Latest Blockchain
      Download the Latest Blockchain
    • Rollback Waves Node
      Rollback Waves Node
    Synchronize Waves Blockchain
  • Upgrade Waves Node
    Upgrade Waves Node
  • Node Configuration
    Node Configuration
  • Logging Configuration
    Logging Configuration
  • Node Wallet
    Node Wallet
  • Features
    • Activation protocol
      Activation protocol
    Features
  • Custom Blockchain
    Custom Blockchain
  • Node API
    • Request headers
      Request headers
    • Activation
      Activation
    • Address
      Address
    • Lease Transactions
      Lease Transactions
    • Assets
      • Public Functions
        Public Functions
      • Private Functions
        Private Functions
      • Distribution Methods
        Distribution Methods
      Assets
    • Alias Transaction
      Alias Transaction
    • Transactions
      Transactions
    • Peers
      Peers
    • Blocks
      Blocks
    • Utils
      Utils
    • Examples of transactions
      Examples of transactions
    • Feature Activation
      Feature Activation
    • API limitations of the pool of public nodes
      API limitations of the pool of public nodes
    Node API
  • Extensions
    • gRPC Server
      gRPC Server
    Extensions
  • Troubleshooting
    Troubleshooting
      • English
      • Русский
      On this page
        • Prerequisites
        • About the Image
        • Running the Image
        • Configuration
      waves_logo Docs

          # Deploy Node in Docker

          The easiest way to run Waves Node is by means of Waves Docker container. It takes just one command to enable everything or to change the settings of your node.

          # Prerequisites

          You need to install the latest version of Docker.

          Please, follow the installation steps described on the Docker website .

          # About the Image

          • The Docker image contains scripts and configs to run Waves Node from Version 0.13.0 for Testnet, Mainnet or custom networks.
          • The image is focused on fast and convenient deployment of Waves Node.
          • The container downloads and runs .jar file along with configuration files from the releases section .

          # Running the Image

          It is highly recommended to read more about Waves Node configuration before running the container.

          To start the container, execute the following command:

          docker run -it wavesplatform/node
          

          ⚠️ We recommend to start the container with the following command for Mainnet:

          docker run -p 6869:6869 -p 6868:6868 -e WAVES_NETWORK=MAINNET -e WAVES_LOG_LEVEL=DEBUG -e WAVES_HEAP_SIZE=2g -v YOUR_LOCAL_PATH_HERE:/waves wavesplatform/node
          

          For Testnet:

          docker run -p 6869:6869 -p 6863:6863 -e WAVES_NETWORK=TESTNET -e WAVES_LOG_LEVEL=DEBUG -e WAVES_HEAP_SIZE=2g -v YOUR_LOCAL_PATH_HERE:/waves wavesplatform/node
          

          You can run the container with the following predefined environment variables:

          Env variable Description
          WAVES_WALLET_SEED Plain text seed for node wallet. Container converts it to base58.
          WAVES_WALLET_SEED_BASE58 Base58 encoded seed.
          WAVES_WALLET_PASSWORD Password for wallet file.
          WAVES_VERSION Node version. Default value is latest. You can find the list of available versions here .
          WAVES_NETWORK Available values are MAINNET and TESTNET.
          WAVES_LOG_LEVEL Node logging level, available values: OFF, ERROR, WARN, INFO, DEBUG, TRACE. More details about logging are available here.
          WAVES_HEAP_SIZE Java Heap Size limit in -X Command-line Options notation (-Xms=[your value]). More details here
          WAVES_CONFIG_FILE Path to your Waves Configuration file.
          WAVES_DECLARED_ADDRESS String with IP address and port to send as external address during handshake. Could be set automatically if UPnP is enabled. If declared-address is set, which is the common scenario for nodes running in the cloud, the node will just listen to incoming connections on bind-address:port and broadcast its declared-address to its peers.
          WAVES_AUTODETECT_ADDRESS Set yes if you want to get your public address and set value declared-address with it.
          WAVES_AUTODETECT_ADDRESS_PORT WAVES_AUTODETECT_ADDRESS can get only an IP address of the node, but not port number, so define your real port number with this variable.

          Note: All the variables are optional.

          # Configuration

          Depending on the env values the image generates local.conf file and stores it in /waves/configs directory. The simple rule of how to set a value in the configuration file:

          1. Determine the path to variable in configuration file (complete configuration file).

          2. Join all section names with two underscores (__).

          3. Replace all dashes with one underscore (_).

          4. Capitalize the final string.

          For instance, if you want to set the value of waves.rest-api.enable, pass an environment variable WAVES__REST_API__ENABLE=no;

          Install Waves Node
          Install Node on Ubuntu
          Install Waves Node
          Install Node on Ubuntu