CentOS 7にGraylogサーバーをインストールする方法
CentOS 7にGraylogサーバーをインストールし、ログ管理を行う方法を学びます。
Hapi.jsは、Node.jsエコシステムでWebアプリケーションを構築するために設計された、リッチで堅牢、かつ強力なNode.jsフレームワークです。その簡単な設計により、簡単に始めることができます。Hapiは、ES6のプロミスなど、最新のJavaScript ES6機能の多くをコアで使用しています。以前にExpressを使用したことがある方は、Hapiを使用して新しいことを試し、最新のJavaScript機能をすべて体験することができます。
このチュートリアルの目標は、Vultr VPSからホストされている基本的なHapi.js WebページをUbuntu 16.04 LTSに設定することです。サイトのドメインをお持ちの場合は、リバースプロキシを使用してドメインをウェブサイトにリンクします。最後に、プロセスマネージャーで管理する方法を学びます。これで問題が解決したので、始めましょう。
Node.jsをインストールする必要があります。Ubuntu 16.04 LTSでこれを行うには、次の手順に従います。
Node.jsの最新のLTSリリースを含むNodeSource APTリポジトリを追加する必要があります。
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs
ソースリストにリポジトリを追加するために使用するスクリプトをダウンロードし、NodeSourceリポジトリからNode.jsをインストールします。
Node.js自体をインストールするだけでなく、必要なビルドツールもインストールする必要があります。これは、インストールする必要があるモジュールのビルドに役立ちます。
sudo apt-get install -y build-essential
これは、リポジトリからビルドツールをダウンロードしてインストールするだけです。
アプリケーションに使用するフォルダーを指定することをお勧めします。このフォルダーには、構成ファイルや起動スクリプトなど、アプリケーションのすべてのデータが含まれます。フォルダを作成し、好きな名前を付けます。このチュートリアルでは、名前を付けたと仮定しますsite
。
mkdir site
フォルダーを作成したら、次はそのフォルダーに変更できます。作成したディレクトリにいることを確認して、NPMパッケージウィザードを起動します。
npm init
アプリケーション名、開始ファイル、ライセンスなど、いくつかの異なるものを入力するように求められます。アプリケーションの名前など、より明確なフィールドを除いて、デフォルトのままにできるほとんどのフィールド。最終的には、次のようになります。
{
"name": "site",
"version": "1.0.0",
"description": "Hapi.js site",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "rich",
"license": "MIT"
}
結果に満足したら、クリックENTERしてファイルを保存します。
これでディレクトリが正常に構築されたので、Hapi.jsのインストールに進むことができます。前述のように、NPMを使用して、プロジェクトのHapi.jsとその依存関係をダウンロードします。プロジェクトディレクトリで、以下を実行します。
npm install hapi.js
これにより、NapiからHapi.jsがダウンロードされ、プロジェクトディレクトリにインストールされます。同じ実行で、Hapi.jsが依存する可能性のある依存関係もダウンロードされます。
今���は、ベースのHapi.jsアプリケーションファイルを設定します。これには、アプリケーションのすべてのコードが含まれます。さらに先���進んで、アプリケーションコードを拡張し、必要に応じてさらに多くのものを追加できます。
次に、開始ファイルを作成します。ファイルの名前の付け方を正確に判断するにmain
は、package.json
ファイルのセクションをもう一度参照してください。デフォルトの命名規則を使用したため、ファイルはという名前になりますindex.js
。
nano index.js
nanoテキストエディター内に移動したら、ベースアプリケーションコードを作成します。
const Hapi=require('hapi');
const server=Hapi.server({
host:'localhost',
port: 3000
});
server.route({
method:'GET',
path:'/',
handler:((request,h)) => {
return 'Sample Hapi.js Application';
}
});
async function start() {
try {
await server.start();
} catch (err) {
console.log(err);
process.exit(1);
}
console.log(`Our server is running! ${server.info.uri}`);
};
start();
まず、Hapiモジュールをインポートします。次に、サーバーを実行するホストと3000
、このチュートリアル用のポートを含むサーバーコンストラクターを初期化します。次に、基本的なルーターを設定します。これは、誰かがサイトにアクセスするたびに、簡単なメッセージで迎えられることを示しています。さらに、サーバーを起動する非同期機能があり、サーバーが実行しているコンソールにログを記録します。完了したら、ファイルを保存して閉じます(CTRL+ X)
メインファイルが設定されたので、アプリケーションを開始する準備ができました。
node index.js
Our server is running!
コンソールに「」が表示された場合、サーバーは正常に起動しています。
NginxはデフォルトのUbuntuリポジトリで使用できるため、インストールは簡単です。パッケージリストを更新して、インストールするだけです。
sudo apt update
sudo apt install nginx -y
パッケージリストを更新すると、Nginxとその依存関係がインストールされます。
Nginxでアプリケーションをリバースプロキシするには、構成ファイルを作成する必要があります。この構成ファイルには、Nginxがリバースプロキシに使用するアプリケーションに関する情報が保持されます。
Nginxが作成したデフォルトの構成を削除します。後でそれを独自の構成に置き換えるためです。
sudo rm /etc/nginx/sites-enabled/default
sites-available
フォルダに新しいファイルを作成します。命名については、単純site
にするために単純に固執できます。
sudo nano /etc/nginx/sites-available/site
ファイルに以下を貼り付けて保存します。
server {
listen 80;
location / {
proxy_set_header X-Real-IP
$remote_addr;
proxy_set_header
X-Forwarded-For
$proxy_add_x_forwarded_for;
proxy_set_header Host
$http_host;
proxy_set_header
X-NginX-Proxy true; proxy_pass
http://127.0.0.1:3000/;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Upgrade
$http_upgrade;
proxy_set_header Connection
"upgrade";
proxy_redirect off;
proxy_set_header
X-Forwarded-Proto $scheme;
}
}
このファイルでは、ポートでリッスンするようNginxに指示しています80
。また、プロキシパススルーをlocalhost
アドレスとポート3000
に設定しています。これは、Hapiアプリケーションと同じポートです。
これで、アプリケーションディレクトリに戻ってサイトを開始できます。サイトが開始したら、http://yourdomain.com
またはhttp://yourip
に移動すると、テキスト「Hello World
」が表示されます。
PM2はNPMリポジトリーにあり、グローバルにインストールして、どこからでもアクセスできるようにすることができます。
sudo npm install pm2 -g
-g
末尾のフラグは、モジュールをグローバルモジュールフォルダーにインストールすることを示しています。これにより、プロジェクトディレクトリの外でモジュールを使用できるようになります。これは、プロジェクトが通常のシステムアプリケーションのように動作するために使用されます。
PM2をインストールしたら、プロジェクトディレクトリに戻ります。アプリケーションを開始するための構文は、少し異なります。これは、PM2で行う方法です。
pm2 start index.js --name site
PM2スタート機能を使用します。これは、基本的にアプリケーションのプロファイルをという名前で作成しますsite
。このコマンドを実行すると、ウェブサイトは起動しますが、ログが表示されないことに気づくでしょう。これは、ログの表示方法が異なるためです。
pm2 logs site
--lines
引数を使用して、表示するログの行数を指定することもできます。
Hapi.js Webサーバーを正常にセットアップし、Nginxでリバースプロキシし、PM2でサーバーをより適切に管理する方法を学びました。この知識があれば、このチュートリアルをさらに拡張して、非常に高度なHapi.jsアプリケーションを作成できます。Hapiの可能性について詳しくは、公式ドキュメントをご覧ください。PM2の可能性の詳細については、クイックスタートガイドをご覧ください。
CentOS 7にGraylogサーバーをインストールし、ログ管理を行う方法を学びます。
Debian 10にWebDAVをデプロイする方法を学び、WsgiDAVとSSL証明書で安全な接続を実現しましょう。
CentOS 7サーバーにApache 2.4をインストールする方法を説明します。安定したウェブサーバーを構築するための前提条件と手順を解説します。
FreeBSD 11.1におけるBlacklistdのインストール方法について詳しく解説します。この方法を通じて、強力なセキュリティ対策を実装できます。
サーバーマネージャーを使用して、Windows Serverの管理が向上します。セキュリティリスクを軽減し、効率的な管理を実現します。
CentOS 7にSeafileサーバーをインストールする方法。Seafile(コミュニティバージョン)は、ownCloudに似た無料のオープンソースファイル同期および共有ソリューションです。
Snortは無料のネットワーク侵入検知システムです。最新の方法で、SnortをDebianにインストールし、設定する手順を紹介します。ネットワークのセキュリティを強化しましょう。
CentOS 7にGraylogサーバーをインストールし、ログ管理を行う方法を学びます。
WindowsサーバーでWebサイトを実行している場合、電子メールも受信できるようにするためにhMailServerを使用する方法を解説します。
FiveMサーバーをUbuntu 19.04にインストールするための詳細なガイド。必要条件からインストール、起動、トラブルシューティングまで、すべてのステップを含みます。
Debian 10にWebDAVをデプロイする方法を学び、WsgiDAVとSSL証明書で安全な接続を実現しましょう。
ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。