---
title: 安裝NexCMP
description: 在 Ubuntu 上透過單行安裝程式安裝 NexCMP——包含參數、安裝程式的動作、TLS 與 nginx，以及如何前往安裝精靈。
url: https://nexcmp.com/zh-tw/docs/getting-started/installation/
applies_to: NexCMP 1.6.1
updated: 2026-11-02
---

# 安裝NexCMP {#install-nexcmp}

安裝程式是由您的授權伺服器所提供的一個單一指令碼。它會檢查機器、啟用您的授權、下載並驗證程式、安裝服務，並（選擇性地）透過 Let's Encrypt 憑證設定 nginx。

## 開始之前 {#before-you-start}

- 符合[requirements](https://nexcmp.com/zh-tw/docs/getting-started/requirements/)的伺服器，以及 root 權限。
- 來自您[license page](https://nexcmp.com/licenses)的**授權金鑰**與**主網域**——請參閱[License and purchase](https://nexcmp.com/zh-tw/docs/getting-started/license-and-purchase/)。
- 該網域的 DNS 記錄——請參閱[DNS and Cloudflare](https://nexcmp.com/zh-tw/docs/getting-started/dns-and-cloudflare/)。您也可以先安裝再稍後修復 DNS；安裝程式會告訴您缺少什麼，且可以直接再次執行。

## 安裝 {#install}

1. 登入伺服器並切換為 root（或使用 `sudo` 做為前綴）。
2. 執行您授權頁面上的指令。它看起來像這樣：

```bash
curl -fsSL https://nexcmp.com/install.sh | sudo bash -s -- \
  --license NXC-XXXXX-XXXXX-XXXXX-XXXXX \
  --domain cloud.example.com \
  --email admin@example.com
```

3. 等待勾選符號出現。全新安裝需要幾分鐘；首次啟動會建立資料庫結構描述，在慢速磁碟上可能需要最多一分鐘。
4. 閱讀結尾處的摘要。它會印出客戶端入口網站與管理員網址、**安裝代碼**以及下一步。

![安裝程式完成時顯示的入口網站網址、管理員網址與一次性安裝代碼](https://nexcmp.com/zh-tw/docs/images/getting-started/installation-01-finish.webp)

## 參數 {#parameters}

| 參數 | 預設值 | 含意 |
|---|---|---|
| `--license KEY` | 首次安裝時必填 | 授權金鑰。 |
| `--domain NAME` | 首次安裝時必填 | 主網域。必須與授權相符。`https://` 與結尾路徑將會被移除。 |
| `--email ADDRESS` | 無 | 用於 Let's Encrypt 到期通知的聯絡電子郵件。若未提供，則註冊憑證時將不包含電子郵件。 |
| `--port N` | `3000` | 面板的本機連接埠（1–65535）。 |
| `--no-nginx` | 關閉 | 不安裝或設定 nginx / TLS。當您執行自己的反向代理伺服器或想要先試用 NexCMP 時使用此選項。 |
| `--behind-cloudflare` | 自動偵測 | 強制使用「網域由 Cloudflare 代理」模式。通常會從 DNS 自動偵測。 |
| `--channel NAME` | `stable` | 版本通道。 |

再次**不帶參數**執行安裝程式會重複使用已儲存的參數（`/etc/nexcmp/install.conf`）並安全升級，同時保留資料、設定與帳號。這正是 `sudo nexcmp update` 的運作方式。

## 安裝程式的動作 {#what-the-installer-does}

1. **檢查機器**——Ubuntu 22.04/24.04、x86_64、至少 2 GB RAM、8 GB 可用磁碟空間。
2. **安裝**所需的套件（`curl`、`zstd`、`openssl`、`python3`、`openssh-client`⋯⋯）。
3. **建立服務使用者** `nexcmp` 與下列目錄：`/opt/nexcmp`（程式，由 root 擁有，服務為唯讀）、`/etc/nexcmp`（設定）、`/var/lib/nexcmp`（資料）、`/var/log/nexcmp`。
4. **啟用**網域的授權，並為此機器儲存固定的執行個體 ID。
5. **下載您有權使用的最新版本**，然後驗證其 SHA-256 與 Ed25519 簽章。拒絕沒有有效簽章的版本。絕不會降級較新執行中的版本。
6. **寫入設定與 systemd 單元**（`nexcmp`、`nexcmp-vmd`、`nexcmp-update`）並啟動服務；等待 `/healthz` 回應。
7. **設定 nginx 與 TLS**（除非有 `--no-nginx`）：透過 certbot（webroot 驗證）為網域取得 Let's Encrypt 憑證，並在這些名稱也能解析時為 `admin.<domain>` / `partner.<domain>` 取得憑證。如果 DNS 尚未指向此伺服器（或 Cloudflare），它會跳過此步驟並顯示說明。
8. **印出摘要**，其中包含 URL，若尚未存在管理員則包含**設定碼**。

## 面板連接埠 (3000) {#the-panel-port-3000}

- 在首次安裝期間，面板會監聽 `0.0.0.0:3000`，以便您在 `http://<server-IP>:3000/setup` 開啟設定精靈。
- 精靈完成**且** TLS 啟用後，面板僅會監聽 `127.0.0.1`；nginx 會將 `https://<domain>` 反向代理至該處。
- 若發生緊急狀況（nginx 損壞、DNS 錯誤），您可以在有限時間內開啟連接埠：`sudo nexcmp open-port 30`（30 分鐘後自動關閉）——或者使用 SSH 通道：`ssh -L 3000:127.0.0.1:3000 <server>` 並瀏覽 `http://127.0.0.1:3000/`。

::: warning 純 HTTP
連接埠 3000 為純 HTTP。請僅在受信任的網路或透過 SSH 通道將其用於設定精靈。切勿使其保持開啟狀態。
:::

## 在沒有公開網域的情況下安裝（實驗室或測試） {#installing-without-a-public-domain-lab-or-test}

您可以在尚無 DNS 的機器上安裝：

```bash
curl -fsSL https://nexcmp.com/install.sh | sudo bash -s -- \
  --license NXC-XXXXX-XXXXX-XXXXX-XXXXX --domain lab.example.com --no-nginx
```

然後透過 SSH 通道開啟精靈（`ssh -L 3000:127.0.0.1:3000 <server>`，瀏覽 `http://127.0.0.1:3000/setup`）。一旦 DNS 存在，請在沒有 `--no-nginx` 的情況下重新執行安裝程式。

## Docker 與 Kubernetes {#docker-and-kubernetes}

目前未發布容器映像檔。安裝程式（原生的systemd安裝方式）為官方支援的安裝途徑。

## 驗證 {#verify}

```bash
sudo nexcmp status
```

您應該會看到版本、`nexcmp: active`、`nexcmp-vmd: active`、`healthz: ok`，以及（在精靈完成前）設定碼。繼續進行 [setup wizard](https://nexcmp.com/zh-tw/docs/getting-started/setup-wizard/)。

如果發生錯誤，請參閱 [Installation errors](https://nexcmp.com/zh-tw/docs/troubleshooting/installation-errors/)。
