Khi deploy smart contract, ta cần chỉ định một tài khoản Ethereum có đủ số dư để thanh toán phí deploy. Ta thường sao chép recovery phrase vào một tệp .env
bị ignore bởi .gitignore
để nó có thể được sử dụng cho, ví dụ, @truffle/hdwallet-provider
.
Tuy nhiên, việc copy-paste các khóa là một bad practice, đặc biệt là khi chúng ta có các ví như MetaMask có thể gửi các giao dịch thay cho chúng ta.
Truffle Dashboard là một công cụ giúp ta sử dụng ví MetaMask để thực hiện deploy hoặc ký giao dịch mà không cần quan tâm tới việc quản lý khóa.
Khởi chạy dashboard bằng câu lệnh sau:
truffle dashboard [--port <number>] [--host <string>] [--verbose]
Mặc định, dashboard sẽ chạy ở http://localhost:24012
.
Sau đó, ta cần liên kết ví MetaMask với dashboard.
Cuối cùng, ta cần cấu hình truffle-config.js
để có thể deploy thông qua dashboard:
module.exports = {
dashboard: {
port: 24012,
},
networks: {
dashboard: {
}
}
};
Sau đó, ta có thể deploy bằng câu lệnh sau:
truffle deploy --network dashboard
Network mà contract được deploy lên là network được chọn của ví MetaMask.
Kết nối đến dashboard thông qua CLI:
truffle console --network dashboard