我找到了一台旧 PC,我想将它用作专用的 Node.js 测试机。
基本上我想在win机器上编写我的应用程序,然后通过samba将它们复制到节点文件夹并通过ssh启动它们。稍后,我会添加一个新贵脚本并使用 samba 将其复制到服务器,这样当我重新启动时,应用程序每次都会自动启动。
- 为了在专用 Ubuntu 服务器上的网络上正确运行 Node.js 应用程序,我需要安装什么?这是我想出的清单,如果我错了,请纠正我。还有别的事吗?
- SSH
- samba (ftp 或 sftp 应该是要走的路,但由于它是一个封闭的内部网络,我必须从各种操作系统的 samba 访问它是不考虑安全问题的共享文件的最简单方法..大多数时候我使用简单的文本编辑)
- “基本的ubuntu服务器”文件?
- “灯” (?)
- 节点.js
- 节点包管理器。
- 如何在 Ubuntu 服务器上安装最新的 Node.js、npm 和 init 文件。我看到没有简单的
sudo apt-get install nodejs npm
. - 我需要什么样的脚本来启动我的应用程序以及我将它们放在哪里(更喜欢本机脚本)?
编辑
经过一些测试,我现在处于一个好点,这就是我所做的:
- 我从最小的 CD 安装了 ubuntu
- 在选择软件包时,我只选择了 ssh 和 samba
- 更新系统
- 安装运行 node.js 所需的依赖项
- 从 git 安装最新的节点
- 在我的情况下设置 samba 我为脚本创建了文件夹 /var/nodejs
- 将您的 testApp.js 放在 nodejs 文件夹中
- 从 ssh 启动你的 testApp.js。*它不会工作
3-更新系统
sudo apt-get update && sudo apt-get upgrade
4-依赖
sudo apt-get install g++ curl libssl-dev apache2-utils git-core make
5-安装节点
git clone git://github.com/ry/node.git
cd node
./configure
make
sudo make install
6 设置桑巴舞sudo nano /etc/samba/smb.conf
[nodejs]
comment = nodejs
workgroup = WG
security = USER
path = /var/nodejs
server string =Node JS
browsable = yes
read only = no
writeable = yes
create mask = 0777
7-testApp.js
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello Node.js\n');
}).listen(80, "192.168.0.1");
console.log('Server running at http://192.168.0.1:80/');
8-现在一切都应该运行......但是:
您只能以管理员身份运行 nodejs,在启动命令前附加“sudo”,否则作为普通用户您无权访问 1000 以下的大多数端口。
A. 如何在不使用 sudo 的情况下在端口 80 上启动我的应用程序?
显然,如果您使用command sudo node /var/nodejs/testApp.js
关闭终端启动应用程序,则应用程序将停止。
为此,我们使用初始化脚本。
经过一番阅读,我发现upstart本地安装在 ubuntu 服务器中,它可能是启动应用程序的最佳方式。
B. 我知道你需要用你的 appname 和 .conf 扩展名将脚本放入 /etc/init/ 中。但是它是如何工作的?