# Deploy Your dApp on WAX
- Compile your smart contracts
- Create WAX Blockchain Accounts for each of your contracts
- Deploy your smart contracts to the WAX Blockchain
WAX provides two ways to accomplish these deployment steps. You can use our custom make scripts (recommended for EOS developers) or use WAX-CDT tools from your local Docker container or installation. Below is a list of benefits and requirements for each option.
# Custom Deploy Scripts
The WAX Source Code Repository includes a hello-world sample contract, along with make scripts that provide an easy, automated way to build and deploy your smart contracts. These scripts use the WAX Docker Development image to:
- Create a WASM and ABI file
- Create a WAX Blockchain Account for your smart contract
- Deploy your smart contract to WAX
- Test your smart contract on the WAX Blockchain
- Allows you to deploy a smart contract from a Docker container, without installing any WAX source code (you'll still need to download the hello-world source code and scripts from the WAX Source Code Repository).
- You can run the customizable make scripts from your smart contract's directory, without passing paths to your WASM and ABI files.
# What You'll Need:
Docker must be installed and configured to run without sudo. Linux users, refer to Post-installation steps for Linux for more information.
Windows Subsystem for Linux Users: Docker configuration and installation requirements will vary depending on your WSL version. Recommended only for advanced Docker/Windows users. If you're running WSL 2, refer to Docker Desktop WSL 2 Tech Preview for more information.
make (VERSION 3.9 +)
A self-managed WAX Blockchain Account and its private key (to deploy the contract).
# Docker Depoy (WAX-CDT)
If you prefer, you can deploy your smart contracts from the command line using WAX-CDT tools.
- Allows more control over the build process and deployment parameters. Refer to WAX-CDT Optionsfor more information.
- If you used eosio-init to Create a Smart Contractand deploy to your local blockchain, this might be a good option for you.
- Compatible for Windows users.
# What You'll Need
To use this option, you'll need to:
- Complete our Docker Quickstart(recommended) or use the WAX Blockchain Setupto build from source.
- Use the WAX Contract Development Toolkit (WAX-CDT)to compile your smart contracts.
# Before You Begin
No matter which deployment option you choose, you'll need to:
- Create a self-managed WAX Blockchain Account.
- Make sure you have enough WAX staked in your account to allocate resources.