1.スタートアップファイルとパッケージファイルの関係
(1)http-sever.jsファイルはdistの下のファイルの下にあります
// 配置地址
const clientPort = '8888'
// node启动服务
var http = require('http')
var fs = require('fs')
var url = require('url')
var path = require('path')
var server = http.createServer(function (request, response) {
//获取输入的url解析后的对象
var pathObj = url.parse(request.url, true);
//static文件夹的绝对路径
var staticPath = __dirname;
//获取资源文件绝对路径
var filePath = path.join(staticPath, pathObj.pathname=='/'?'/index.html':pathObj.pathname)
//异步读取file
console.log(filePath);
fs.readFile(filePath, 'binary', function (err, fileContent) {
if (err) {
console.log('404')
response.end('<h1>404 Not Found</h1>')
} else {
console.log('ok')
response.write(fileContent, 'binary')
response.end()
}
})
})
server.listen(clientPort)
console.log('visit http://localhost:'+clientPort)
(2)異なるレベルのserver.jsおよびdistファイル(追加予定)
var express = require('express')//加载express构造函数
var app = express() //生成创建服务的实例
app.use(express.static('dist')) //指定静态资源路径
app.listen(8022,function(){
console.log("启动成功")
})
2.Linuxで一般的に使用されるコマンド
(1)、1 1
(2)、移动某文件到另外文件
a、(当前文件)mv 文件名 要去的文件路径下
b、(指定文件) mv 要移动的文件路径 要去的文件路径下
(3)、解压某个文件 ubzip
(4)、运行某个特殊文件 ./hh.sh
Linuxエントリ-nodejsのインストールと構成
著者:MsgSS
リンク:https://www.jianshu.com/p/21e42cd362e7
出典:ジェーンブックス
nodejsの公式ウェブサイトでコンパイルされたパッケージの形でLinuxサーバーにnodejsをインストールする方法は次のとおりです。
1.インストールされているかどうかを確認します
オペレーティングシステムに関しては、ソフトウェアやシステムに関係なく、ディレクトリ構造とファイルです。特にLinuxでは、ディレクトリの概念がより明確であるため、ソフトウェアのインストールはファイルとディレクトリのコピーであると言えます。
ほとんどのサーバーはデフォルトでnodejsをインストールしませんが、一部のミラーにはnodejsが組み込まれているため、Linuxにリモートでログインした後、インストールを開始する前にnodejsがインストールされているかどうかを確認できます(もちろんnpmも確認できます)。 、次のコマンドを入力して、nodejsとnpmがインストールされているかどうかを確認します。
whereis nodejs
whereis npm
関連するパスが見つからないというプロンプトが表示された場合は、パスがインストールされていないことを示しているため、見下ろします。
2.nodejsコンパイルパッケージをダウンロードします
exeをウィンドウに直接ダウンロードし、ダブルクリックしてインストールしますが、Linuxでは同じではありません。最初にnodejsダウンロードページを開きます:http://nodejs.cn/download/ 、適切なLinuxバージョンを選択してパッケージをコンパイルします
Linuxバイナリコンパイルパッケージを選択します
クリックするだけでダウンロードできます。2つの方法があります。1つはウィンドウマシンにダウンロードしてから、pscp.exeを介してサーバーにアップロードする方法です。2つ目はwgetを使用してLinuxサーバーに直接ダウンロードする方法です。2つ目は推奨されます。
たとえば、以前に取得したダウンロードアドレスは次のとおりです。https://npm.taobao.org/mirrors/node/v10.13.0/node-v10.13.0-linux-x64.tar.xz
Linuxをリモートで入力します(パテツールを右クリックして、コピーしたコンテンツを直接貼り付けます)
wget -c https://npm.taobao.org/mirrors/node/v10.13.0/node-v10.13.0-linux-x64.tar.xz
などをダウンロードできます
wgetを使用してファイルをダウンロードする
ファイルをチェックしてください
ls
ls
ターゲットファイルが見つかり、ダウンロードが完了したら、ファイルを解凍します
(PS:mysql .... rpmは、mysqlデータベースの後続のインストールに使用されますが、ここでは無視されます)
3.コンパイルされたパッケージを解凍します
前述のように、ソフトウェアはファイルとディレクトリのコレクションであるため、ダウンロードしたnode-v10.13.0-linux-x64.tar.xzは、解凍後に正常に実行できます。もちろん、ディレクトリを気軽に配置しないでください。 。
まず、ファイルを現在のディレクトリに解凍します
tar -xvf node-v10.13.0-linux-x64.tar.xz
ファイルを解凍します
(追記:ちょっとしたコツについて話しましょう。パスとファイル名を参照するときは、最初の数文字を入力した後、タップキーを押すと、システムが自動的に完了します。これは、ウィンドウのcmdや一部のコマンドでも一般的です。コードエディタ。)
ファイルを現在のディレクトリ(/ root /)に解凍するのは非常に喜ばしいことですが、ウィンドウの下にソフトウェアをインストールするときと同じように、ソフトウェアを適切な場所に配置する必要があります。通常、Cドライブにはインストールしません。このフォルダを別のディレクトリにコピーまたは切り取ります。
Linuxの下に、ソフトウェア用に特別に使用されるディレクトリ、つまり/ usr /があります。/user/ではないことに注意してください。そのファイル構造を見ると、以下にさらにいくつかの特別なフォルダ、つまり/があることがわかります。 bin、/ local、/ sbinなど。
/ usr /ディレクトリ構造を表示する
実行可能ファイルは、次のようなこれらの特別なディレクトリに配置されます。
/ usr / binここのスイッチマシンなど、システムによって事前設定された実行可能ファイルが最も優先されます
/ usr / local / binユーザー自身に関連する実行可能ファイル。自分でインストールしたソフトウェアをここに配置することが推奨されている場合は、グローバルにプロモートされます。
/ usr / sbinは基本的に上記と同じです
/ usr / local / binの下に置いたファイルを置くことができるので、グローバルに直接使用でき、ソフト接続を設定する必要はありませんが、私の習慣のため、ファイルを/ usr / sbinフォルダー。特定のプロセスは同じです。
ダウンロードして解凍したファイルに戻りましょう。便宜上、ファイルの名前をnodejsに変更しましょう。
cd〜
mvノード-v10.13.0-linux-x64nodejs
nodejsの名前を変更する
Linuxでのrenameコマンドは(mvソースファイルパスと新しいファイルパス)で、moveコマンドと同じです。
もちろん、コマンドを自動的に完了するには、タップキーを使用する必要があります。1文字ずつ入力しないでください。
名前を変更した後、nodejsのbinフォルダーにある実行可能ファイルを確認しましょう
ls
3つのnpm、node、npxがあり、それらはすべて実行可能ファイルであることがわかります。
次にメインイベントが発生しました。/root/nodejsフォルダーを/ usr / sbin /ディレクトリの下に配置する必要があります。
mv / root / nodejs / / usr / sbin /
モバイル
相対パスではなく絶対パスを使用することをお勧めします。実行が完了すると、ルートパスの下のnodejsフォルダーが/ usr / sbin /に移動されます。
4.ソフトリンクを構成します
nodejsをグローバルに使用できるようにするには、ソフトリンクを構成する必要があります(ショートカットと同様に、インストールパスが/ usr / local / bin /の下にある場合、この手順は必要ありません)。もちろん、これも必要です。ユーザーディレクトリ/ usr / local / bin /へのソフトリンク
ソフトリンクコマンドは非常に簡単です 。ln-sソースファイルのターゲットパス
ln -s / usr / sbin / nodejs / bin / node / usr / local / bin /
ln -s / usr / sbin / nodejs / bin / npm / usr / local / bin /
上記の2つのコマンドは、ノードとnpmの実行可能ファイルを/ usr / local / bin /ディレクトリにリンクするためのものです。これは、グローバル環境に2つのショートカットを追加するのと同じです(システム変数としても理解できます)。
5.インストール結果を確認します
長い間設定した後、それがどのように機能するかを見てみましょう。以前にグローバルパスを構成したので、任意のパスでnodeまたはnpmを実行できるはずです。次の2つのコマンドを試すことができます。
node -v
npm -version
バージョンを表示
もちろん、whereisノードを使用して特定のパスを表示することもできます(クエリはショートカットのパスです)
この時点で、nodejsのインストールは完了です。
6.Taobaoミラーを構成します
ただし、淘宝網ミラーを構成したい友人の場合、それを使用する方法はウィンドウの下と同じにすることができます。cnpmをダウンロードする必要があります。コマンドは次のとおりです。
npm install -g cnpm --registry = https://registry.npm.taobao.org
インストールが成功すると、cnpm実行可能ファイルがnodejsインストールディレクトリ(つまり、/ usr / sbin / nodejs / bin /)にダウンロードされます。次に、cnpmをグローバルに構成します。つまり、/ usr / local / bin /へのソフトリンクを作成します(元々このディレクトリにいる場合は、ソフトリンクを作成しないでください)。
ln -s / usr / sbin / nodejs / bin / cnpm / usr / local / bin /
現時点では、cnpmを使用してモジュールをダウンロードでき、速度が活用されます
cnpm
通常、2番目の方法を永久に使用します。
永遠に、永遠は非常に強力で多くの機能を持っています。現在使用されているいくつかの基本的なものだけがここにリストされています。
2.1永久にインストールする
npm install forever -g
ln -s /usr/sbin/node-v10.13.0-linux-x64/bin/forever / usr / local / bin / forever(インストールしたファイルを参照)
2.2サービスを開始する
サービスは永遠に始まります
ここでいくつかのエラーが報告される場合がありますが、通常は無視して、主にコマンドが実行されているかどうかを確認できます。
2.3jsを開始するために永遠に使用する
永遠にapp.jsを起動します
起動後、文の永遠のリストに従って起動状況を表示できます
2.4jsファイルを停止します
app.jsを永久に停止します
2.5出力ログ
forever start -l forever.log -o out.log -e err.log app.js
ログを出力するコマンドについては、ログのファイル名を繰り返さないように注意してください。繰り返さないと、エラーが報告され、forever.logは/root/.forever/ディレクトリにあります。
tail -f out.logを使用して、実行ステータスを確認します。
実際、デフォルトでは、/ root / .forever /は引き続きログファイルを生成しますが、ログの名前はランダムな文字列であり、管理が容易ではなく、時間に基づいてのみ判断できます。
2.6パラメータから始める
app.js -tu http://127.0.0.1:8181 / javaweb / -lp3001を永久に起動します
app.js -tu http://127.0.0.1.53003/javaweb/ -lp3002を永久に起動します
当然、パラメーターの特定の意味はコードで合意する必要があります。
2.7jsファイルを再起動します
app.jsを永久に再起動します
このコマンドは、以前に開始されたすべてのサービスを再起動し、前回の起動時のパラメーターが保持され、ログファイルが保持されます
起動結果は次のとおりです。
非常に便利なコマンド。
2.8実行中のプロセスを表示する
永遠のリスト
# 作为前台任务启动
$ forever server.js
# 作为服务进程启动
$ forever start app.js
# 停止服务进程
$ forever stop Id
# 重启服务进程
$ forever restart Id
# 监视当前目录的文件变动,一有变动就重启
$ forever -w server.js
# -m 参数指定最多重启次数
$ forever -m 5 server.js
# 列出所有进程
$ forever list
最後に、それはブートからブートするコードに依存します
実行中のシェルスクリプトを/etc/rc.d/rc.localに追加します(つまり、次のコードをrc.localに追加します)
/root/service/app‐start.sh
シェルスクリプト(app-start.sh)
source /etc/profile
echo "run monitor============"
cd /root/service/monitor
nohup java ‐jar cdmtc.monitor‐1.0.0.jar >monitor.log 2>&1 &
echo "monitor is starting============"
echo "run sysmanage============"
cd /root/service/sysmanage
nohup java ‐jar sysmanage‐0.0.1‐SNAPSHOT.jar > sysmanage.log 2>&1 &
echo "sysmanage is starting============"
echo "run gateway============"
cd /root/service/gateway
nohup java ‐jar cdmtc.qb.gateway‐0.0.1‐SNAPSHOT.jar >gateway.log 2>&1 &
echo "gateway is starting============"
echo "run eureka============"
cd /root/service/eureka
nohup java ‐jar cdmtc.eureka‐1.0.0.jar >eureka.log 2>&1 &
echo "eureka is starting============"
echo "run textresolver============"
cd /root/service/textresolver
nohup java ‐jar cdmtc.textresolver‐1.0.0.jar >textresolver.log 2>&1 &
echo "textresolver is starting============"
//前端启动
echo "run dist============"
cd /root/service/dist
nohup forever start http-server.js
echo "dist is starting============"
パーミッションの変更に注意してくださいchmod + x app-start.sh