在Debian系统上集成JavaScript(JS)应用通常涉及以下几个关键步骤,以确保环境的高效性和应用的可维护性。以下是一些最佳实践:
curl -fsSL https://deb.nodesource.com/setup_14.x | sudo -E bash -
sudo apt-get install -y nodejs
node -v
npm -v
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
source ~/.bashrc
nvm install 14
nvm use 14
mkdir my-node-project
cd my-node-project
npm init -y
npm install express
echo 'const express = require('express'); const app = express(); const port = 3000; app.get('/', (req, res) => { res.send('Hello World!'); }); app.listen(port, () => { console.log(`Example app listening at http://localhost:${port}`); });' > app.js
node app.js
export PATH=/usr/local/node-v14.14.0-linux-x64/bin:$PATH
~/.bashrc
或~/.zshrc
)sudo npm install pm2 -g
pm2 start app.js --name my-node-app
module.exports = {
apps: [
{
name: 'app',
script: 'app.js',
instances: 'max',
exec_mode: 'cluster',
autorestart: true,
watch: false,
max_memory_restart: '1G',
env: { NODE_ENV: 'development' },
env_production: { NODE_ENV: 'production' }
}
]
};
然后使用以下命令启动应用程序:pm2 start ecosystem.config.js
sudo apt install nginx
sudo nano /etc/nginx/sites-available/my-node-app
添加以下内容:server {
listen 80;
server_name your_domain_or_ip;
location / {
proxy_pass http://localhost:3000;
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 ln -s /etc/nginx/sites-available/my-node-app /etc/nginx/sites-enabled
sudo nginx -t
sudo systemctl restart nginx
npm install --save-dev jest
npm test
pm2 logs
FROM node:14
WORKDIR /usr/src/app
COPY package*.json ./
RUN npm install
COPY . .
EXPOSE 3000
CMD [ "node", "app.js" ]
docker build -t yourapp .
docker run -p 3000:3000 yourapp
通过以上步骤,你可以在Debian系统上成功集成JavaScript应用,并确保其高效运行和易于管理。