溫馨提示×

如何在Ubuntu構建JS項目

小樊
46
2025-10-06 03:43:47
欄目: 編程語言

如何在Ubuntu上構建JS項目

在Ubuntu上構建JavaScript項目(涵蓋Node.js后端、React/Vue前端或NestJS等框架),需完成環境準備→項目初始化→依賴管理→構建配置→進程管理→部署優化六大步驟,以下是詳細指南:

1. 環境準備:安裝Node.js與npm

JavaScript項目依賴Node.js運行時和npm包管理器。Ubuntu官方倉庫的版本較舊,推薦通過**NVM(Node Version Manager)**安裝最新穩定版,便于版本切換:

# 安裝NVM(需聯網)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash
# 加載NVM環境(重啟終端或運行)
source ~/.bashrc
# 安裝最新LTS版本Node.js(如v18)
nvm install --lts
# 驗證安裝(應輸出版本號)
node -v  # 示例:v18.17.1
npm -v   # 示例:9.6.7

注:若需安裝特定版本(如v16),可替換為nvm install 16。

2. 項目初始化:創建項目目錄與package.json

通過package.json管理項目元數據和依賴,是JS項目的核心配置文件:

# 創建項目目錄并進入
mkdir my-js-project && cd my-js-project
# 初始化項目(-y自動接受默認配置)
npm init -y

此時會生成package.json,包含項目名稱、版本、入口文件(main)、依賴列表等字段。

3. 依賴管理:安裝項目所需依賴

根據項目類型安裝依賴,分為生產依賴--save,默認)和開發依賴--save-dev,僅開發時需要):

# 安裝Express框架(生產依賴,用于構建后端API)
npm install express --save
# 安裝ESLint(開發依賴,用于代碼質量檢查)
npm install eslint --save-dev

提示:若項目使用TypeScript,需安裝typescript、@types/node等依賴;若為前端項目,需安裝react、vue等框架依賴。

4. 構建配置:添加項目腳本與工具

package.json中定義腳本命令,簡化構建、啟動等任務;根據需要配置構建工具(如Webpack、Babel):

{
  "scripts": {
    "start": "node index.js",          // 啟動生產環境
    "dev": "nodemon index.js",        // 開發環境(自動重啟)
    "build": "tsc",                   // TypeScript編譯(若有)
    "lint": "eslint src/"             // 代碼檢查
  },
  "devDependencies": {
    "nodemon": "^3.0.0",              // 開發時自動重啟工具
    "eslint": "^8.0.0"                // 代碼檢查工具
  }
}

注:若項目為前端項目(如React),需配置Webpack的webpack.config.js,并通過npm run build編譯為生產代碼;若為NestJS項目,需運行npm run build編譯TypeScript為JavaScript。

5. 進程管理:使用PM2保持應用運行

PM2是Node.js進程管理器,可實現自動重啟(崩潰后自動恢復)、日志管理、集群模式(多核CPU優化)等功能:

# 全局安裝PM2
sudo npm install -g pm2
# 啟動應用(假設入口文件為index.js,服務名稱為my-app)
pm2 start index.js --name "my-js-app"
# 查看進程狀態(確認應用運行中)
pm2 status
# 生成開機自啟配置(避免服務器重啟后進程終止)
pm2 startup
# 保存當前進程列表(需運行pm2 startup后執行)
pm2 save

提示:常用命令還包括pm2 logs(查看實時日志)、pm2 restart my-js-app(重啟應用)、pm2 stop my-js-app(停止應用)。

6. 部署優化:配置Nginx反向代理與防火墻

為提升安全性與可訪問性,需通過Nginx反向代理將請求轉發到Node.js應用,并配置防火墻開放端口:

# 安裝Nginx
sudo apt update && sudo apt install nginx
# 開放HTTP(80)和HTTPS(443)端口
sudo ufw allow 'Nginx Full'
# 配置Nginx反向代理(編輯默認站點配置)
sudo nano /etc/nginx/sites-available/default

server塊中添加以下內容(替換your-domain.com為服務器IP或域名):

location / {
    proxy_pass http://localhost:3000;  # 轉發到Node.js應用端口
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection 'upgrade';
    proxy_set_header Host $host;
    proxy_cache_bypass $http_upgrade;
}

保存后重啟Nginx:

sudo systemctl restart nginx

注:若需啟用HTTPS,可通過Let’s Encrypt免費獲取SSL證書,配置Nginx支持HTTPS。

通過以上步驟,即可在Ubuntu上完成JS項目的構建、運行與部署。根據項目類型(如Next.js、NestJS),需調整部分配置(如Next.js的next build命令),但核心流程一致。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女