古いPCを見つけたのでNode.js専用のテスト機として使いたい。
基本的に、win マシンでアプリを作成し、samba 経由でノード フォルダーにコピーして、ssh 経由で起動したいと考えています。後で、upstart スクリプトを追加し、それを samba と共にサーバーにコピーして、再起動するとアプリが毎回自動的に起動するようにします。
- 専用の Ubuntu サーバー上のネットワークで Node.js アプリを適切に実行するには、何をインストールする必要がありますか? これが私が思いついたリストです。間違っていたら訂正してください。他に何かありますか?
- ssh
- samba (ftp または sftp を使用する必要がありますが、これは閉じた内部ネットワークであり、さまざまな OS からアクセスする必要があるため、セキュリティの問題を考慮せずにファイルを共有する最も簡単な方法は samba です..ほとんどの場合、単純なテキストを使用します編集者)
- 「基本的なubuntuサーバー」ファイル?
- 「ランプ」(?)
- node.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-これですべてが実行されるはずですが...しかし:
起動コマンドの前に「sudo」を追加する管理者としてのみnodejsを実行できます。それ以外の場合は、1000未満のほとんどのポートにアクセスできない通常のユーザーとして実行できます。
A. sudo を使用せずにポート 80 でアプリを起動するにはどうすればよいですか?
そして明らかcommand sudo node /var/nodejs/testApp.js
に、端末を閉じるとアプリを起動すると、アプリは停止します。
そのために、init スクリプトを使用します。
いくつか読んだ後、upstartがubuntuサーバーにネイティブにインストールされていることがわかりました。これはおそらくアプリを起動する最良の方法です。
B. appname と .conf 拡張子を付けてスクリプトを /etc/init/ に配置する必要があることはわかっていますが、それはどのように機能しますか?