---
title: "關於 Solana Devnet，你需要知道的一切"
description: "Devnet 是什麼、如何運作，以及如何開始將智能合約部署到 Solana Devnet"
---

# 關於 Solana Devnet，你需要知道的一切

Solana 的高速交易、低交易成本，以及對開發者友善的環境，使其成為 dApp 開發者與使用者的絕佳鏈。如果你正打算[在 Solana 上開始建置](https://www.alchemy.com/solana?a=8e820d1a78)，本文將說明 Solana 的 Devnet，這是用於在模擬 Solana 主網的測試網路上測試智能合約的重要開發者資源。

## **什麼是 cluster？**

Cluster 是**一組節點**，負責評估要加入區塊鏈的交易是否有效。

在每個 cluster 中，會有一個節點被指定為「leader」（leader 大約每兩天輪替一次），負責建議哪些交易應加入區塊鏈的帳本，並用自己的簽章對建議的交易簽名。Cluster 中的其他節點則是「validator」，負責複查交易是否有效。

### **什麼是 Solana Devnet？**

Solana Devnet 是複製實際 Solana 網路（也就是 Mainnet）環境的環境，但使用測試用的 SOL token 來完成交易，讓 web3 開發者不需要花費真正的錢來測試他們的智能合約。

Solana Devnet 是一個安全的實驗場所，讓開發者、使用者與 validator 可以在零風險的情況下測試應用程式。

### **什麼是 Solana Devnet faucet？**

為了防止惡意行為者造成網路壅塞，同時保持網路免費使用，Solana Devnet 使用與主網不同的 token。

Devnet token 可以透過 [Solana Devnet faucet](https://solfaucet.com/)取得，或是透過在命令列介面（CLI）中輸入以下 airdrop 指令取得。

### **什麼是 Solana Devnet explorer？**

[Solana Devnet explorer](https://explorer.solana.com/?cluster=devnet)讓 web3 開發者可以搜尋 devnet 上的任何區塊、交易、程式或 token。這個工具可以幫助開發者取得交易相關資訊、除錯無法正常運作的交易，並探索程式細節。

### **Solana 的 Testnet 與 Devnet 有什麼差別？**

Solana 的 Devnet 與 Solana Testnet 的差別在於，testnet 是供 Solana 核心開發團隊用來測試主網計劃更新的網路，而 Devnet 則是提供給一般大眾使用的測試環境。

### **如何連接到 Solana 的 Devnet**

在連接到 Solana 的 Devnet 之前，務必先在你的本機環境中[安裝必要的 Solana 開發者工具](http://www.alchemy.com/overviews/solana-developer-tools)。如果你是從零開始，可以依照以下說明安裝基本工具。

### **1. 安裝 Solana tool suite**

首先，你需要 Solana Tool Suite 才能連接到 Devnet。安裝 tool suite 的方式取決於你使用的作業系統是 MacOS、Linux 還是 Windows。以下是各開發環境的安裝說明。

#### **Mac 使用者**

如果你的作業系統是 **MacOS 或 Linux**，打開你慣用的終端機應用程式，並複製貼上以下指令。

版本號碼可以替換為你想安裝的任何版本

#### **Windows 使用者**

如果你的作業系統是 **Windows**，請改為複製貼上以下內容到 Command Prompt。

執行以下指令來安裝 Tool Suite：

### **2. 檢查你的 Solana 版本**

無論使用哪種作業系統，接下來請執行以下指令，再次確認你安裝的 Solana 版本是否正確。

### **3. 連接到 Devnet cluster**

最後，執行以下指令連接到 Devnet cluster，這樣你就成功連上 Devnet 了。

## **如何將 Solana 智能合約部署到 Devnet**

在這個教學中，我們將部署 Solana 團隊開發的 [HelloWorld 程式](https://github.com/solana-labs/example-helloworld/blob/master/src/program-rust/src/lib.rs)。這個程式會為被呼叫的帳戶建立一個計數，代表這個程式在該帳戶上被呼叫過的歷史次數。

舉例來說，第一次執行會將計數增加到 1，但回傳的計數是 0。第二次執行會回傳計數 1，並將其增加到 2。

因為我們已經安裝好 Solana Tool Suite，接下來只需要安裝以下相依套件：

1. NodeJS
1. Rust
1. Git

安裝完相依套件後，我們會 clone HelloWorld repo，並依照必要步驟將它部署到 Solana 的 Devnet 上。

### **1. 安裝 NodeJS**

要安裝 [NodeJS](https://nodejs.org/en/download/)（本教學需要 v14 或更高版本）——請選擇符合你作業系統的安裝程式。

依照安裝程式顯示的步驟操作後，NodeJS 會自動在你的終端機中執行以下的 node 指令。

### **2. 安裝 Rust**

如果你的作業系統是 MacOS、Linux 或其他類 Unix 系統，且命令列已就緒，執行以下指令來安裝 Rust。

在 Windows 上，請下載並安裝 [rustup-init.exe](https://forge.rust-lang.org/infra/other-installation-methods.html#:~:text=download%20and%20run-,rustup%2Dinit.exe,-.)。

### **3. 安裝 git**

要在 Windows 上安裝 Git，請[選擇符合你 Windows 版本的安裝程式](https://git-scm.com/download/win)並依照指示操作。

要在 MacOS 與 Linux 上安裝 Git，請先在你慣用的終端機中執行以下指令安裝[ Homebrew](https://brew.sh/)。

接著在終端機中執行以下指令，透過 Homebrew 安裝 Git。

### **4. Clone Solana HelloWorld repo**

安裝完相依套件後，接下來請在你的環境中 clone HelloWorld repository。

### **5. 連接到 Devnet**

執行以下指令，再次確認你是否已連接到 Devnet cluster。

如果尚未連接到 Devnet cluster，請使用以下指令連接到 Devnet：

### **6. 產生 keypair**

現在，產生一組 keypair，包含公鑰（你的錢包地址）與私密種子片語。這組 keypair 讓你能夠在鏈上建立帳戶，並與 Solana 程式互動。

### **7. 取得 Devnet SOL token**

你需要 Devnet SOL token 才能在 Devnet 上執行我們的程式。你可以透過以下指令請求 token。

### **8. 建置並部署到 Devnet**

現在，建置這個程式並將它部署到 Devnet。

在建置程式後，控制台輸出結果的最下方應該會有部署程式所需的指令。

如果你找不到，請複製貼上以下指令，將程式部署到 Solana 的 Devnet。

## **開始在 Solana 上建置**

使用 Solana Devnet，web3 開發者可以在全世界效能最高的 layer 1 區塊鏈之一上建置[應用程式](https://www.alchemy.com/dapps/top/defi-dapps)。若要開始建置，請[申請存取 Alchemy 的 Solana API](https://www.alchemy.com/solana?a=8e820d1a78)。
