Synology DS218を使ってWebアプリケーションを立ち上げるまで

Last Updated on 2023年9月7日 by らくろぐ

いろいろなサイトを参考にさせていただき、DS218を使ってWebアプリケーションを構築するところまで何とか持っていくことができたので、その備忘録を兼ねて記事を投稿します。

DS218を導入するまで

まず、なぜDS218を導入(購入)することになったかというと、そもそも、すでにバッファローのLinkStation LS-WXLE45を使用していました。

ただ、この機種はかなり過去のモデルのため、自分の求める拡張性が足りていなく、やや不満に思っていました。

このところ、少し自分自身に余裕が出てきたので、LinkStationのパーティションを変更するためにいろいろと調査し始めたところ、フォーマット機能やWebアクセス機能が使えなくなっていて(ハード的に故障した?)バックアップも考慮して他のNASを導入することにしました。

さて、どのNASを購入するか、そこが迷うところでした。

DS218でできること

NASを使ってやりたいこと、できることは以下の通り。

  • データのバックアップ
  • メールサーバー
  • Webアプリケーションを作成、起動

Webアプリケーションを起動するにはNode.jsを起動させる環境が必要であり、これらの環境はSynologyが提供するDSMからなら簡単に導入できそう。

また、マニュアルなども充実しており、今回はSynologyのNASを採用することに決めました。

Synologyにすることは早々に決めましたが、DS218にする絶対的な理由は特にありませんでした。量販店に行ったときにこちらのモデルのみすぐ手に入ったから、というのが大きな理由です。

DS218jとは

最大2台までHWを取り付け可能なNASキットです。

提供しているライブラリやツールも多く、ユーザがやりたいことの可能性を広げてくれるキットといえるでしょう。

こちらの記事にまとめましたので参考にしてください。

環境設定

DSMを開くとパッケージフォルダが表示されます。

これを開き、使いたいモジュールを選択し、インストールするだけで追加できます。

このフォーマットがとても使いやすいと思いました。

今回、データベースを利用したWEBアプリケーションの開発を目標としているので以下のアプリケーションをインストールしました。

  • Node.js
  • Mariadb
  • phpAdmin

SSHで接続するための設定

そのほかに行いたいこととして、DS218jに対してSSHでアクセスすることがありました。これを行っておけば、ターミナルからコマンドラインでNode.jsも、Webアプリケーションも起動することができるようになります。(DSMでnode.jsの起動をスケジュールすることも可能ですがそれはまた別の記事で)

コントロールパネルから「端末とSNMP」を選び、「端末」タブで「SSHサービスを有効化する」にチェックします。

これでSSHからログインできるようになります。

固定IPの設定

マストに必要ではないが、固定IPの設定を行いました。

といっても、現在使用している環境はほぼ固定IPなので改めて変更は必要ありませんでした。

WEBアプリケーションを構築する

いよいよWebアプリケーションをDS218jで動かしてみることにします。アプリケーションはProgateのサンプルアプリ使用しました。

Progateの場合、アプリケーション自体もProgateの環境で起動しているのですが、これを自分のサーバー(PCでない)で動作させるため、以下の手順で行いました。

  • DS218jのIPアドレスを調査する。
  • サンプルアプリをダウンロードする
  • サンプルアプリを解凍する。
  • 解凍したデータを確認すると、ファイルは一つの階層になっています。
  • Ejsとexpressをインストールする。
  • 同梱されているSQLファイルを取り込んでアプリケーションに対応したデータベースを構築する。
  • Viewファイルとなるapp.jsにて、データベースのコネクションを設定する。
    • サーバーのアドレス:localhost
    • ユーザー名:root、、その他
    • パスワード:ユーザ名に沿ったパスワードを設定
    • データベース名:インポートしたsqlファイルが作成したデータベース名
  • node app.js でファイルを起動する。
  • app.jpに定義したポート番号でアクセスする。
    • http://192.168.x.x:PORT

ざっと手順をまとめました。もう少しわかりやすくまとめたいところです。

Synology DiskStation DS218 [クアッドコアCPU搭載多機能パーソナルクラウド 2ベイNASキット] CS7123