Troubleshooting NTT Deployment#
If you encounter issues during the NTT deployment process, check the following common points:
- Solana and Anchor versions - ensure you are using the expected versions of Solana and Anchor as outlined in the deployment page
- Token compliance on EVM - verify that your token is an ERC20 token on the EVM chain
- Mint authority transfer
- For burn or spoke tokens on Solana - ensure the token mint authority was transferred as described in the set SPL Token Mint Authority section
- For EVM tokens - confirm the token minter was set to the NTT Manager. Refer to the set Token Minter to NTT Manager section for details
- Decimal configuration - run
ntt pull
to correctly configure the decimals in yourdeployment.json
file. More details in the configure NTT section - Rate limit configuration - increase your rate limits to a value greater than zero. A rate limit of zero can cause transactions to get stuck. Learn more on how to configure rate limits
-
Docker environment based on Ubuntu 20.04 with all dependencies required for Wormhole NTT CLI development - run
docker compose up -d
to start the container in your terminal from the directory containing thedocker-compose.yml
fileDockerfile
FROM ubuntu:20.04 # Set environment variables to prevent interactive prompts during installation ENV DEBIAN_FRONTEND=noninteractive # Update and install necessary dependencies RUN apt-get update && apt-get install -y \ curl \ wget \ git \ build-essential \ libssl-dev \ libudev-dev \ pkg-config \ python3 \ python3-pip \ software-properties-common \ ca-certificates \ unzip \ clang \ cmake \ protobuf-compiler \ && apt-get clean && rm -rf /var/lib/apt/lists/* # Install Rust RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y ENV PATH="/root/.cargo/bin:$PATH" # Install Solana CLI (v1.18.10) RUN sh -c "$(curl -sSfL https://release.solana.com/v1.18.10/install)" ENV PATH="/root/.local/share/solana/install/active_release/bin:$PATH" # Install Anchor using avm RUN cargo install --git https://github.com/coral-xyz/anchor avm --locked --force \ && avm install 0.29.0 \ && avm use 0.29.0 ENV PATH="/root/.avm/bin:$PATH" ENV NVM_DIR=/root/.nvm RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash \ && . "$NVM_DIR/nvm.sh" \ && nvm install 22 \ && nvm use 22 \ && nvm alias default 22 ENV PATH="$NVM_DIR/versions/node/v22.12.0/bin:$PATH" # Install Bun RUN curl -fsSL https://bun.sh/install | bash ENV PATH="/root/.bun/bin:$PATH" # Install Foundry RUN curl -L https://foundry.paradigm.xyz | bash ENV PATH="/root/.foundry/bin:${PATH}" RUN /bin/bash -c "source /root/.bashrc && foundryup" # Install Wormhole NTT CLI RUN curl -fsSL https://raw.githubusercontent.com/wormhole-foundation/native-token-transfers/main/cli/install.sh | bash # Add a default working directory WORKDIR /app # Expose port for development if needed EXPOSE 8899 # Entry point for the container CMD ["bash"]