FreeBSD 11にWiki.jsをインストールする方法

Wiki.jsは、Node.js、MongoDB、Git、Markdownに基づいて構築された無料のオープンソースの最新のWikiアプリです。Wiki.jsソースコードは、Githubで公開されています。このガイドでは、Node.js、MongoDB、PM2、Nginx、Git、Acme.shを使用して、新しいFreeBSD 11 VultrインスタンスにWiki.jsをインストールする方法を示します。

必要条件

Wiki.jsを実行するための要件は次のとおりです。

  • Node.jsバージョン6.11.1以降
  • MongoDBバージョン3.2以降
  • Gitバージョン2.7.4以降
  • Nginx、Apache、IIS、Caddy、H2OなどのWebサーバー。このガイドではNginxを使用します。
  • Git準拠のリポジトリ(パブリックまたはプライベート)これはオプションです
  • 512MB以上のRAM。少なくとも1GBのRAMを搭載したマシンを使用することを強くお勧めします。
  • A/ AAAAレコードが設定されたドメイン名。このガイドではwiki.example.com、例としてドメインを使用します。

あなたが始める前に

FreeBSDのバージョンを確認してください。

uname -ro
# FreeBSD 11.2-RELEASE

FreeBSDシステムが最新であることを確認します。

freebsd-update fetch install
pkg update && pkg upgrade -y

インストールsudovimunzipwgetgitbashsocat彼らはあなたのシステム上に存在しない場合のパッケージ。

pkg install -y sudo vim unzip wget git bash socat

希望するユーザー名で新しいユーザーアカウントを作成します(ここではを使用しますjohndoe)。

adduser

# Username: johndoe
# Full name: John Doe
# Uid (Leave empty for default): <Enter>
# Login group [johndoe]: <Enter>
# Login group is johndoe. Invite johndoe into other groups? []: wheel
# Login class [default]: <Enter>
# Shell (sh csh tcsh nologin) [sh]: bash
# Home directory [/home/johndoe]: <Enter>
# Home directory permissions (Leave empty for default): <Enter>
# Use password-based authentication? [yes]: <Enter>
# Use an empty password? (yes/no) [no]: <Enter>
# Use a random password? (yes/no) [no]: <Enter>
# Enter password: your_secure_password
# Enter password again: your_secure_password
# Lock out the account after creation? [no]: <Enter>
# OK? (yes/no): yes
# Add another user? (yes/no): no
# Goodbye!

visudoコマンドを実行し、%wheel ALL=(ALL) ALL行のコメントを外して、wheelグループのメンバーが任意のコマンドを実行できるようにします。

# Uncomment by removing the hash (#) sign
%wheel ALL=(ALL) ALL

次に、新しく作成したユーザーに切り替えます。

su - johndoe

注: ユーザー名に置き換えjohndoeてください。

タイムゾーンを設定します。

sudo tzsetup

Node.jsをインストールする

Wiki.jsにはNode.js 6.11.1以降が必要であるため、最初に適切なバージョンのNode.jsをインストールする必要があります。

Node.jsとNPMをインストールします。

sudo pkg install -y node8 npm-node8

バージョンを確認してください。

node -v && npm -v
# v8.12.0
# 6.4.1

MongoDBをインストールする

Wiki.jsはデータベースエンジンとしてMongoDBを使用します。

MongoDBをインストールします。

sudo pkg install -y mongodb36

バージョンを確認してください。

mongo --version | head -n 1 && mongod --version | head -n 1
# MongoDB shell version v3.6.6
# db version v3.6.6

MongoDBを有効にして起動します。

sudo sysrc mongod_enable=yes
sudo service mongod start

Acme.shをインストールし、Let's Encrypt証明書を取得します(オプション

HTTPSでWikiを保護する必要はありませんが、サイトのトラフィックを保護することをお勧めします。Let's EncryptからSSL証明書を取得するために、Acme.shクライアントを使用します。Acme.shは、依存関係がゼロのLet's EncryptからSSL証明書を取得するための純粋なUNIXシェルソフトウェアです。これにより、正常に実行するために多くの依存関係を必要とする他のいくつかのAcmeプロトコルクライアントと比較して、非常に軽量になります。

Acme.shをダウンロードしてインストールします。

sudo mkdir /etc/letsencrypt
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh
sudo ./acme.sh --install --home /etc/letsencrypt --accountemail [email protected]
cd ~

acme.shバージョンを確認してください。

/etc/letsencrypt/acme.sh --version
# v2.8.0

のRSAおよびECDSA証明書を取得しwiki.example.comます。

# RSA 2048
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d wiki.example.com --ocsp-must-staple --keylength 2048
# ECDSA/ECC P-256
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d wiki.example.com --ocsp-must-staple --keylength ec-256

上記のコマンドを実行すると、証明書とキーは次のディレクトリにあります。

  • RSA: /etc/letsencrypt/wiki.example.com
  • ECC / ECDSA: /etc/letsencrypt/wiki.example.com_ecc

注: ドメイン名に置き換えることwiki.example.comを忘れないでください。

Let's Encryptから証明書を取得したら、それらを利用するようにNginxを構成する必要があります。

Nginxをインストールして構成する

Wiki.jsは実際のWebサーバーがなくても実行できますが、その前に標準のWebサーバーを置くことを強くお勧めします。これにより、SSL、複数のWebサイト、キャッシングなどの機能を使用できるようになります。このチュートリアルではNginxを使用しますが、他のサーバーでも使用できます。適切に構成する必要があります。

Nginxをインストールします。

sudo pkg install -y nginx

バージョンを確認してください。

nginx -v
# nginx version: nginx/1.14.0

Nginxを有効にして起動します。

sudo sysrc nginx_enable=yes
sudo service nginx start

NginxをWiki.jsアプリケーションのHTTPS(SSLを使用する場合)リバースプロキシとして構成します。

実行してsudo vim /usr/local/etc/nginx/wiki.js.conf、以下の基本的なリバースプロキシ構成を入力します。

server {

  listen [::]:443 ssl http2;
  listen 443 ssl http2;
  listen [::]:80;
  listen 80;

  server_name wiki.example.com;

  charset utf-8;
  client_max_body_size 50M;

  # RSA
  ssl_certificate /etc/letsencrypt/wiki.example.com/fullchain.cer;
  ssl_certificate_key /etc/letsencrypt/wiki.example.com/wiki.example.com.key;
  # ECDSA
  ssl_certificate /etc/letsencrypt/wiki.example.com_ecc/fullchain.cer;
  ssl_certificate_key /etc/letsencrypt/wiki.example.com_ecc/wiki.example.com.key;

  location / {
    proxy_set_header Host $http_host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_pass http://127.0.0.1:3000;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    proxy_next_upstream error timeout http_502 http_503 http_504;
  }

}

上記の設定で変更する必要があるのserver_nameproxy_passディレクティブだけです3000。また、以外のポートを設定する場合は、ディレクティブが変更される可能性があります。Wiki.jsは3000デフォルトでポートを使用します。ファイルを保存して:+ W+で終了しますQ

次に、wiki.js.confファイルをメインnginx.confファイルに含める必要があります。

sudo vim /usr/local/etc/nginx/nginx.conf次の行を実行してhttp {}ブロックに追加します。

include wiki.js.conf;

構成を確認してください。

sudo nginx -t

Nginxをリロードします。

sudo service nginx reload

Wiki.jsをインストールする

Wiki.jsがインストールされる空のドキュメントルートフォルダーを作成します。

sudo mkdir -p /usr/local/www/wiki.example.com

ドキュメントルートフォルダーに移動します。

cd /usr/local/www/wiki.example.com

/usr/local/www/wiki.example.comフォルダの所有権をユーザーに変更しますjohndoe

sudo chown -R johndoe:johndoe /usr/local/www/wiki.example.com

/usr/local/www/wiki.example.comフォルダーから次のコマンドを実行して、Wiki.jsをダウンロードしてインストールします。

curl -sSo- https://wiki.js.org/install.sh | bash

VERSION=$(curl -L -s -S https://beta.requarks.io/api/version/stable)
curl -L -s -S https://github.com/Requarks/wiki/releases/download/v$VERSION/wiki-js.tar.gz | tar -f - -xz -C .
curl -L -s -S https://github.com/Requarks/wiki/releases/download/v$VERSION/node_modules.tar.gz | tar -f - -xz -C .
cp -n config.sample.yml config.yml

現在インストールされているWiki.jsのバージョンを表示するには、次のコマンドを実行します。

node wiki --version
# 1.0.102

インストールが完了すると、構成ウィザードを実行するように求められます。

実行して構成ウィザードを開始します。

node wiki configure

これにより、http://localhost:3000Wiki.jsを構成するために移動するように通知されます。Wiki.jsの前にNginxがある場合は、localhostにアクセスするhttp://wiki.example.com代わりにドメイン名(例:)を開くことができます。

Webブラウザーを使用して、http://wiki.example.com画面上の指示に移動し、それに従います。構成ウィザードで入力したすべての設定がconfig.ymlファイルに保存されます。構成ウィザードが自動的にWiki.jsを起動します。

PM2プロセスマネージャーのインストールとセットアップ

デフォルトでは、システムの再起動後、Wiki.jsは自動的に起動しません。起動時に起動するために、PM2プロセスマネージャーをインストールしてセットアップする必要があります。

を介してPM2をグローバルにインストールしますnpm

sudo npm install -g pm2

バージョンを確認してください。

pm2 -v
# 3.2.2

まだそこにいない場合は、ドキュメントルートフォルダーに移動し、Wiki.jsを停止します。

cd /usr/local/www/wiki.example.com
node wiki stop

PM2経由でWiki.jsを起動します。

pm2 start server/index.js --name "Wiki.js"

PM2が管理するプロセスを一覧表示します。

pm2 list

次のコマンドを実行して、PM2に自身をスタートアップサービスとして設定するように伝えます

pm2 startup

最後に、次のコマンドを実行して、現在のPM2構成を保存します。

pm2 save

Wiki.jsインスタンスは、PM2をプロセスマネージャーとして使用して、バックグラウンドプロセスとして実行されます。



Leave a Comment

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1におけるBlacklistdのインストール方法について詳しく解説します。この方法を通じて、強力なセキュリティ対策を実装できます。

FreeBSD 12にNeos CMSをインストールする方法

FreeBSD 12にNeos CMSをインストールする方法

別のシステムを使用していますか?Neosは、CMSとアプリケーションフレームワークをコアとするコンテンツアプリケーションプラットフォームです。このガイドでは、インストール方法を説明します

完全なディスク暗号化でOpenBSD 5.6をセットアップする

完全なディスク暗号化でOpenBSD 5.6をセットアップする

このチュートリアルでは、Vultr VPSで完全に暗号化されたディスクを使用してOpenBSD 5.6を設定する方法を示します。暗号化の部分に関する注意:周りのほとんどのデータセンター

Debian、CentOS、およびFreeBSDでSudoを使用する方法

Debian、CentOS、およびFreeBSDでSudoを使用する方法

LinuxおよびUnixのシステム管理者の間では、sudoユーザーを使用してサーバーにアクセスし、コマンドをルートレベルで実行することは非常に一般的です。sudの使用

FreeBSD 12にosTicketをインストールする方法

FreeBSD 12にosTicketをインストールする方法

別のシステムを使用していますか?osTicketは、オープンソースのカスタマーサポートチケットシステムです。osTicketのソースコードはGithubで公開されています。このチュートリアルでは

OpenBSD 6.2にWordPressをインストールする

OpenBSD 6.2にWordPressをインストールする

はじめにWordPressは、インターネット上の主要なコンテンツ管理システムです。ブログから動的コンテンツを備えた複雑なWebサイトまで、あらゆるものを強化します

OSの選択:CentOS、Ubuntu、Debian、FreeBSD、CoreOS、またはWindows Server

OSの選択:CentOS、Ubuntu、Debian、FreeBSD、CoreOS、またはWindows Server

この記事では、Vultrでテンプレートとして提供されるサーバーオペレーティングシステムの概要を説明します。CentOS CentOSはRHEL(Re

X-Cart 5をFreeBSD 12にインストールする方法

X-Cart 5をFreeBSD 12にインストールする方法

別のシステムを使用していますか?X-Cartは、数多くの機能と統合を備えた非常に柔軟なオープンソースのeコマースプラットフォームです。X-Cartのソースコードはホストです

FreeBSD 11 FAMP VPSにOmeka Classic 2.4 CMSをインストールする方法

FreeBSD 11 FAMP VPSにOmeka Classic 2.4 CMSをインストールする方法

別のシステムを使用していますか?Omeka Classic 2.4 CMSは、デジタルを共有するための無料のオープンソースのデジタル出版プラットフォームおよびコンテンツ管理システム(CMS)です。

Directus 6.4 CMSをFreeBSD 11 FAMP VPSにインストールする方法

Directus 6.4 CMSをFreeBSD 11 FAMP VPSにインストールする方法

別のシステムを使用していますか?Directus 6.4 CMSは、強力で柔軟な無料のオープンソースヘッドレスコンテンツ管理システム(CMS)であり、開発者に提供します。

FreeBSD 11にPyroCMSをインストールする方法

FreeBSD 11にPyroCMSをインストールする方法

別のシステムを使用していますか?PyroCMSは、PHPで記述されたオープンソースのCMSです。PyroCMSソースコードはGitHubでホストされています。このガイドでは、entirをよく歩いてください

FreeBSD 12.0にApache、MySQL、PHP(FAMP)スタックをインストールする方法

FreeBSD 12.0にApache、MySQL、PHP(FAMP)スタックをインストールする方法

はじめにLinuxのLAMPスタックに相当するFAMPスタックは、通常一緒にインストールされるオープンソースソフトウェアのコレクションです。

FreeBSD 11で独自のメールサーバーを構築する

FreeBSD 11で独自のメールサーバーを構築する

独自の電子メールサーバーを実行することは、かなりやりがいがあります。あなたはあなたのデータを担当しています。また、配信オプションの柔軟性も向上します。しかしながら

FreeBSD 10でスワップファイルを作成する

FreeBSD 10でスワップファイルを作成する

デフォルトでは、Vultr FreeBSDサーバーはスワップスペースを含むように構成されていません。使い捨てのクラウドインスタンスを意図している場合は、おそらく必要ありません

FreeBSD 10でのiRedMailのセットアップ

FreeBSD 10でのiRedMailのセットアップ

このチュートリアルでは、FreeBSD 10の新規インストールにグループウェアiRedMailをインストールする方法を示します。少なくとも1ギガバイトのサーバーを使用する必要がありますo

FreeBSDでディスクのサイズを変更する方法

FreeBSDでディスクのサイズを変更する方法

FreeBSDオペレーティングシステムは、ルートパーティションファイルシステムにUFS(Unix File System)を利用しています。別名freebsd-ufsアップグレードの場合

OpenBSD 6でMariaDBを設定する

OpenBSD 6でMariaDBを設定する

この記事では、MariaDBをOpenBSD 6にインストールし、chrootされたWebサーバー(ApacheまたはNginx)からアクセスできるように構成する方法を紹介します。あなたはアルになります

FreeBSD 11 FAMP VPSにRedaxscript 3.2 CMSをインストールする方法

FreeBSD 11 FAMP VPSにRedaxscript 3.2 CMSをインストールする方法

別のシステムを使用していますか?Redaxscript 3.2 CMSは、最新で超軽量の無料のオープンソースのコンテンツ管理システム(CMS)です。

FreeBSD 12にCraft CMSをインストールする方法

FreeBSD 12にCraft CMSをインストールする方法

別のシステムを使用していますか?はじめにCraft CMSは、PHPで記述されたオープンソースのCMSです。Craft CMSソースコードはGitHubでホストされています。このガイドはあなたを示します

OpenBSDとhttpdを使用してVultrでシンプルなWebサイトを作成する

OpenBSDとhttpdを使用してVultrでシンプルなWebサイトを作成する

はじめにこのガイドの目的は、OpenBSDとhttpdを使用してVultrでWebサイトのホームページを簡単に作成できることを示すことです。作成

CentOS 7にApacheをインストールする方法

CentOS 7にApacheをインストールする方法

CentOS 7サーバーにApache 2.4をインストールする方法を説明します。安定したウェブサーバーを構築するための前提条件と手順を解説します。

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1におけるBlacklistdのインストール方法について詳しく解説します。この方法を通じて、強力なセキュリティ対策を実装できます。

Windows Serverのサーバーマネージャーを使用した複数サーバーの管理

Windows Serverのサーバーマネージャーを使用した複数サーバーの管理

サーバーマネージャーを使用して、Windows Serverの管理が向上します。セキュリティリスクを軽減し、効率的な管理を実現します。

CentOS 7にSeafileサーバーをインストールする方法

CentOS 7にSeafileサーバーをインストールする方法

CentOS 7にSeafileサーバーをインストールする方法。Seafile(コミュニティバージョン)は、ownCloudに似た無料のオープンソースファイル同期および共有ソリューションです。

DebianでSnortを設定する方法

DebianでSnortを設定する方法

Snortは無料のネットワーク侵入検知システムです。最新の方法で、SnortをDebianにインストールし、設定する手順を紹介します。ネットワークのセキュリティを強化しましょう。

CentOS 7にGraylogサーバーをインストールする方法

CentOS 7にGraylogサーバーをインストールする方法

CentOS 7にGraylogサーバーをインストールし、ログ管理を行う方法を学びます。

WindowsでhMailServerを使用してメールサーバーを構築する

WindowsでhMailServerを使用してメールサーバーを構築する

WindowsサーバーでWebサイトを実行している場合、電子メールも受信できるようにするためにhMailServerを使用する方法を解説します。

Ubuntu 19.04にFiveMサーバーをインストールする方法

Ubuntu 19.04にFiveMサーバーをインストールする方法

FiveMサーバーをUbuntu 19.04にインストールするための詳細なガイド。必要条件からインストール、起動、トラブルシューティングまで、すべてのステップを含みます。

WsgiDAVを使用してDebian 10にWebDAVをデプロイする

WsgiDAVを使用してDebian 10にWebDAVをデプロイする

Debian 10にWebDAVをデプロイする方法を学び、WsgiDAVとSSL証明書で安全な接続を実現しましょう。

ヘルスケア2021における人工知能の影響

ヘルスケア2021における人工知能の影響

ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。