溫馨提示×

Node.js在CentOS上如何進行持續集成與持續部署

小樊
36
2025-07-20 17:10:43
欄目: 編程語言

在CentOS上進行Node.js項目的持續集成與持續部署(CI/CD)通常涉及以下步驟:

1. 安裝Node.js和npm

首先,確保你的CentOS系統上已經安裝了Node.js和npm。如果沒有安裝,可以通過以下命令安裝:

sudo yum update -y
curl -sL https://rpm.nodesource.com/setup_14.x | sudo bash -
sudo yum install -y nodejs

2. 選擇并配置測試框架

選擇一個適合項目需求的測試框架,如Jest、Mocha等,并使用npm安裝。例如,安裝Jest:

npm install --save-dev jest

3. 編寫測試用例

在項目中創建測試目錄,并編寫測試用例。例如,創建一個文件sum.test.js

// tests/sum.test.js
const sum = require('../sum');
test('adds 1 + 2 to equal 3', () => {
  expect(sum(1, 2)).toBe(3);
});

4. 配置測試腳本

package.json文件中添加一個測試腳本:

{
  "scripts": {
    "test": "jest"
  }
}

5. 集成CI/CD工具

常用的CI/CD工具包括Jenkins、Travis CI、GitHub Actions等。以下是使用GitHub Actions的示例:

創建.github/workflows/node.js.yml文件

在項目根目錄下創建該文件,并添加以下內容:

name: Node.js CI on:
  push:
    branches: [ main ]
  pull_request:
    branches: [ main ]
jobs:
  build:
    runs-on: ubuntu-latest
    strategy:
      matrix:
        node-version: [14.x, 16.x]
    steps:
    - uses: actions/checkout@v2
    - name: Use Node.js ${{ matrix.node-version }}
      uses: actions/setup-node@v2
      with:
        node-version: ${{ matrix.node-version }}
    - run: npm ci
    - run: npm test

6. 自動化部署

可以使用PM2進行進程管理,并使用Docker進行容器化部署。

使用PM2進行進程管理

sudo npm install pm2 -g
pm2 start app.js --name myapp
pm2 save

使用Docker進行容器化部署

創建一個Dockerfile

FROM node:lts/*
WORKDIR /usr/src/app
COPY package*.json ./
RUN npm install
COPY . .
CMD ["node", "app.js"]

然后,使用Docker構建鏡像并將其推送到Docker Hub或其他容器注冊表:

docker build -t my-node-app .
docker push my-node-app

7. 配置監控和日志工具

使用監控和日志工具來跟蹤系統性能和檢測問題,例如Prometheus、Grafana和ELK Stack。

8. 安全考慮

在自動化腳本中實現錯誤處理和安全檢查,確保腳本在遇到錯誤時立即退出,并使用安全工具來識別代碼庫中的漏洞。

通過以上步驟,你可以在CentOS上實現Node.js項目的持續集成與持續部署,確保代碼質量和持續交付。

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