0

私はNodeJSAPIを開発していますが、すべて問題ありません。

特定の問題について、APIから戻る場合に備えて、いくつかの入力ファイルを処理し、他のものを出力するローカルCLI依存関係を使用しています。

私は、本番環境でこの API を提供するためにどのようなサービスを使用できるかを知りたいと思っていました (おそらく心を開くかもしれません)。

アイデアはNode、同じマシンにインストールできる環境 (私のローカルのようなもの) を持つことですNode

私の特定の依存関係は、 fontforgeとその他のささいなことです。

前もって感謝します。

4

1 に答える 1

1

npm で簡単にインストールできないカスタム ソフトウェアをインストールする必要がある場合、優れた VPS に勝るものはありません。私のお気に入りの VPS プロバイダーは Digital Ocean です。このリンクを使用すると、基本サーバーを 2 か月間無料で利用できるため、料金を支払う前に問題がないかどうかを確認できます。次にお気に入りの VPS プロバイダーは Vultr です。これは、サーバーにカスタム ISO をインストールできるためです。このリンクから無料で試すことができます. しかし、それは自分でサーバーの世話をすることを意味します. Heroku のようなサービスでは、そのすべてが自動的に処理されますが、必要なものをそこにインストールすることはできません。VPS を使用すると、ルート アクセス権を持つ独自のサーバーを取得できます。通常は Linux ですが、Digital Ocean は FreeBSD もサポートしており、正式にはサポートされていませんが、OpenBSD をインストールする人もいます。VPS を使用すると、好きなようにインストールできますが、自分で行う必要があります。常にトレードオフがあります。

より詳しい情報

ノードのインストール

Node を VPS にインストールするに/optは、バージョン管理されたディレクトリとシンボリック リンクを使用してインストールすることをお勧めします。これは、別の回答用に作成した手順の例です。

# change dir to your home:
cd ~
# download the source:
curl -O https://nodejs.org/dist/v6.1.0/node-v6.1.0.tar.gz
# extract the archive:
tar xzvf node-v6.1.0.tar.gz
# go into the extracted dir:
cd node-v6.1.0
# configure for installation:
./configure --prefix=/opt/node-v6.1.0
# build and test:
make && make test
# install:
sudo make install
# make a symlink to that version:
sudo ln -svf /opt/node-v6.1.0 /opt/node

詳細については、この回答を参照してください。

開始スクリプト

サーバーの起動時に独自のアプリケーションを適切に開始するには-これは私が使用しているものに基づくUpstartスクリプトの例です-Ubuntu 14.04で動作するはずですが、新しいバージョンではテストされていません-に保存します/etc/init/YOURAPP.conf:

# When to start the service
start on runlevel [2345]

# When to stop the service
stop on runlevel [06]

# If the process quits unexpectadly trigger a respawn
respawn

# Start the process
exec start-stop-daemon --start --chuid node --make-pidfile --pidfile /www/YOURAPP/run/node-upstart.pid --exec /opt/node/bin/node -- /www/YOURAPP/app/app.js >> /www/YOURAPP/log/node-upstart.log 2>&1

変更するだけです:

  • YOURAPP独自のアプリの名前に
  • /opt/node/bin/nodeあなたの道へnode
  • /www/YOURAPP/app/app.jsNode アプリのパスへ
  • /www/YOURAPP/runPIDファイルが必要な場所に
  • /www/YOURAPP/logログが必要な場所
  • --chuid node--chuid OTHERUSER別のユーザーとして実行する場合はnode

(必ず--chuid上記の名前のユーザーを追加してください)

/etc/init/YOURAPP.confサーバーを安全に再起動し、アプリを引き続き実行できます。次を実行できます。

start YOURAPP
restart YOURAPP
stop YOURAPP

アプリを起動、再起動、および停止します。これは、システムの起動またはシャットダウン中にも自動的に行われます。

于 2016-09-22T10:24:09.723 に答える